马哥门徒DEVOPS第七周

1. 如何为函数定义keyword-only参数(写出个例子即可)?

Keyword-Only Arguments表示给函数传参的时候必须指定参数名,也就是关键字。

示例
一般函数的定义与传参方式:

def main(arg1, arg2):
print(arg1, arg2)

main(1, 2)
main(arg1=1, arg2=2)

定义:

main函数定义两个参数arg1和arg2。

传参:

直接传参或指定参数名(关键字)传参都可以。


带强制关键字参数的函数的定义与传参方式:

def main(arg1, *, arg2):
print(arg1, arg2)

main(1, 2) # 错误的传参方式(会报错)
main(1, arg2=2) # 正确的传参方式

定义:

main函数定义一个一般参数arg1和一个强制关键字参数arg2。

传参:

星号前面的参数为一般参数,可以直接传参,也可以指定参数名即关键字传参;但星号后面的参数都是强制关键字参数,所以必须以指定参数名的方式传参!
在这里插入图片描述

2. 什么是LEGB,请解释

LEGB含义解释
在这里插入图片描述L(Local) > E(Enclosing外层函数局部变量) >G(Global)> B(内建函数(built-in))
寻找变量的调用顺序,就是采用的LEGB原则(就近原则)
寻找顺序:从下往上、从里往外
在各自的函数定义本地变量,函数执行优先选择本地的;
当内层函数不存在本地变量的时候,会选择外层函数局部变量;
当函数中局部变量全部不存在是,会选择global全局变量;
局部变量:函数内部的变量(局部命名空间)
全局变量:函数内部和外部(全局命名空间)
在这里插入图片描述以foo()内部的print(a)为例:

1.如果foo()函数内部有a这个变量,那么a这个变量就是局部的

2.如果foo()函数内,没有这个变量,那么就会去找该函数外层的函数func()中,有没有a这个变量,如果有,那么这个a就是闭包的

3.如果func()中没有变量a,那么就会去最外层的全局变量找

4.如果全局变量没有a,就去内置中找

3. 实现一个计算机程序,如下效果:

  1. 运行后提示让用户输入一个数字
  2. 提示输入操作符(+ - * /)
  3. 再次提示输入一个数字
  4. 打印计算结果
  5. 在不退出程序的前提下,可以允许用户继续输入新一组数据计算
  6. 尽可能改善用户体验
    在这里插入图片描述在这里插入图片描述在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
马哥教育是一家教育机构,专注于Python编程的培训。他们提供了多个课程,包括Python基础、全栈开发、爬虫、数据分析、算法和人工智能等领域。他们的教育课程涵盖了Python所涉及的各个领域,并且价格相对较为亲民。据引用的描述,参加了马哥教育的Python课程后,他们觉得之前的学习都白费了,课程的内容和难度都很高,并且能够帮助他们在工作中更好地应对任务。引用中提到,他们的课程时长约为500个课时,价格相对于其他机构来说较为合理,而且涵盖了Python的多个领域。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [马哥python课堂笔记-马哥教育PYTHON相关基础笔记.pdf](https://download.csdn.net/download/qq_43934844/87905115)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [马哥python 培训](https://blog.csdn.net/weixin_63757190/article/details/121762215)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值