动态参数 : *args
实参角度: 定义一个函数时, * 将所有的位置参数聚合到一个元祖中
顺序 : 位置参数 > * args > 默认参数 > **kwargs
接受所有参数 :
def fun (*args,**kwargs):
print(args,kwargs)
fun(11,2,sex = 3,)
在实参位置上给一个序列,列表,可迭代对象前面叫上*表示把这个序列按顺序打散,打散字典需要用**
在形参的位置上的*表示把接受到的参数组合成一个元组,
仅限关键字参数。(了解)
6.命名空间
从空间角度研究函数
全局空间名称 : py文件运行时所开辟的空间,存放的是执行的py文件(除去内部函数)的所有变量与值(地址)的对应关系,整个py文件结束之后,才会消失临时(局部)名称空间 : 函数执行时,在内存中临时开辟的一个空间,存放的函数中的变量与值的对应关系,随着函数的结束而消失内置名称空间 : input ,print 内置函数等取值顺序加载顺序
加载顺序 : 上面三个空间,谁先加载到内存
内置名称空间--->>全局名称空间--->>(函数执行时)临时名称空间取值顺序 : 就近原则作用域
全局作用域 : 全局名称空间,内置名称空间局部作用域 : 局部名称空间内置函数
globals : 查看全局作用域locals : 查看当前作用域高阶函数(嵌套函数)
转载于:https://www.cnblogs.com/W-Y-C/p/11047073.html