Python3 函数基础2
目录 可变长参数 可变长形参: *args 可变长实参: *容器类 可变长形参: **kwargs 可变长实参: **字典 函数对象 引用 当做容器类型元素 当做参数传给一个函数 当做函数的返回值 函数对象应用 名称空间和作用域 名称空间 内置名称空间 局部名称空间 全局名称空间 空间名称的生成顺序 名称空间搜索顺序 作用域 全局作用域 局部作用域 注意事项 补充 可变长参数 可变长形参: *args 形参中的* 会将溢出的 位置实参 全部接收, 然后以元祖的形式存储, 并将元祖赋值给*后面的args # 我们习惯把*后面的形参叫做args def func(a, *args): print(args) func(1, 2, 3, 4) # (2, 3, 4) 可变长实参: *容器类 实参中的*会将其后面的 容器类型的元素 (列表, 集合, 元祖, 字典)依次取出, 变成位置实参 def func(a, b, c, d): print(a, b, c, d) tup = (2, 3) func(1, *tup, 4) # 1 2 3 4 可变长形参: **kwargs 形参中的**会将溢出的关键字实参全部接收, 然后以字典的形式存储, 并赋值给后面的kwargs # 我们习惯把**后面的形参叫做kwargs def func(a, **kwargs): print(kwargs)