形式参数 函数定义阶段括号所写的参数 实际参数 函数调用阶段括号内传入的参数
形参与实参的关系 可以将形参看成是变量名,实参看成是变量值 函数调用阶段临时绑定,函数运行结束断开 形参的表现形式 变量名 实参的表现形式多种 (把握核心 数据值)
位置参数 从左往右依次填入的参数 位置形参 函数定义阶段从左往右依次填入的变量名 位置实参 函数调用阶段从左往右依次填入的数据值
关键字实参(可以打破位置顺序) 函数调用阶段通过形参名=数据值的形式 传值 1.位置形参与位置实参在函数调用阶段,按照位置对应绑定 2.位置参数绑定的时候多一个不行少一个也不行 重点: 格式越简单越靠前,越复杂越靠后
1.函数无论传入多少位置参数都可以正常运行 可变长形参 def func(x,y,*a): print(x,y,a) func() # () func(1) # (1,) func(1, 2, 3, 4, 5, 6, 7) # (1, 2, 3, 4, 5, 6, 7) func(1,2) # 1 2 () func(1,2,3,4,5,6,7,8,9) # 1 2 (3, 4, 5, 6, 7, 8, 9) func(1,2) # 1 2 (3, 4, 5, 6, 7, 8, 9) *在形参中用于接收多余的位置参数 并组织成元组的行赋值给*后面的变量名
2.函数无论传入多少关键字都可以正常运行 def index(x, y, **b): print(x, y, b) index() # {} index(a=1,b=2,c=3,d=4) # {'a': 1, 'b': 2, 'c': 3, 'd': 4} index(y=2, x=1) # 1 2 {} index(y=2, x=1, u=222, k=111, l=444) # 1 2 {'u': 222, 'k': 111, 'l': 444} **在形参中用于接收多余的关键字参数 并组织成字典的形式赋值给**后面的变量名 *使用 会将列表、元组内的数据打散 **使用 会将字典的键值对打散成关键字参数传入
1.内置名称空间 print() len() 2.全局名称空间 py文件中顶格编写的代码 name = 'jason' # name全局 def func(): # func全局 pass if 1: a = 123 # a全局 for i in range(10): print(i) # i全局 while True: a = 123 # a全局 3.局部名称空间 函数体代码运行之后产生的都是局部名称空间
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理