函数的进阶
1.动态传参
形参:
1. 位置参数
2. 默认参数
3. 动态参数
*args 动态接收位置参数
**kwargs 动态接收关键字参数
def func(*args, **kwargs):
在形参上用*,** 表示聚合, 实参表示打散
顺序:
位置参数 *args 默认值 **kwargs
2.作用域
名称空间:
1. 内置
2. 全局
3. 局部
作用域:
1. 全局作用域: 内置+全局
2. 局部作用域: 局部
globals() 查看全局作用域中的内容
locals() 查看当前作用域中的内容
3. global nonlocal
global: 在局部引入全局变量
nonlocal: 在局部,引入离他最近的那一层的变量