可变长参数
*
*形参:接收多余的位置实参
*实参(可迭代数据类型):打散可迭代数据类型
**
**形参:接收多余的关键字实参
**实参:打散字典,当作关键字实参传参
def f1(*args,**kwargs)
函数对象
- 引用
- 作为容器类元素
- 作为函数返回值
- 作为函数参数
函数嵌套
def f1():
def f2():
pass
f2() # 报错
名称空间和作用域
- 内置名称空间:内置方法
- 全局名称空间:除了内置和局部就是全局
- 局部名称空间:函数内部的变量和函数
执行顺序:内置 --》 全局 --》 局部
搜索顺序:从当前开始 局部 --》 全局 --》 内置
全局作用作用域和局部作用域没有半毛钱关系
局部作用域1和局部作用域2没有半毛钱关系
x = 10
def f1():
x = 20
def f2():
x = 3
def f2():
x = 5
f1()
print(x) # 10