匿名函数:
lambda 参数:表达式
global和nonlocal的区别:
global:声明全局变量,如果在局部对全局变量进行修改的话,就需要用到global进行声明全局变量。
nonlocal:在函数或者其他作用域中使用外层(非全局)变量。
列表生成式:
1、简单的列表生成式
例如:
L=[x*x for x in range(1,10)]
2、带有if判断语句
例如:
a=[x for x in range(100) if x%3==0 ]
3、带有多个参数的
例如:
a=[1,2,3,4,5,6]
b=["a","b","c","d","e","f"]
t=[str(x)+str(y) for x,y in zip(b,a)]
闭包条件:
1、外部函数定义了内部函数
2、外部函数有返回值,并且返回值是内部函数名
3、内部函数必须引用外部函数的变量
闭包格式:
形式一:
def 外部函数名():
n=外部函数变量赋值;
def 内部函数名():
.....
return 内部函数名
形式二:
def 外部函数名():
n=外部函数变量赋值;
def 内部函数名():
.....
return 内部函数名()
闭包作用:
1、global关键字的作用
2、函数局部作用域
3、保存函数的状态信息
4、可以理解为装饰器的基础