day12

可变长参数

*

*形参:接收多余的位置实参

*实参(可迭代数据类型):打散可迭代数据类型

**

**形参:接收多余的关键字实参

**实参:打散字典,当作关键字实参传参

def f1(*args,**kwargs)

函数对象

  1. 引用
  2. 作为容器类元素
  3. 作为函数返回值
  4. 作为函数参数

函数嵌套

def f1():
    def f2():
        pass

f2() # 报错

名称空间和作用域

  1. 内置名称空间:内置方法
  2. 全局名称空间:除了内置和局部就是全局
  3. 局部名称空间:函数内部的变量和函数

执行顺序:内置 --》 全局 --》 局部

搜索顺序:从当前开始 局部 --》 全局 --》 内置

全局作用作用域和局部作用域没有半毛钱关系

局部作用域1和局部作用域2没有半毛钱关系

x = 10
def f1():
    x = 20
    def f2():
        x = 3
    
def f2():
    x = 5

f1()
print(x) # 10
posted @ 2019-09-24 19:43  夜凛  阅读(91)  评论(0编辑  收藏  举报