python为了能够足够简单,其有一种机制是不用告诉解释器函数的名字是什么。就是匿名函数 —lambda
lambda只能封装有限的模块进去。且其有自己的名字空间,不能访问参数列表之外和全局命名空间的参数。
语法:
lambda [arg1 [,arg2,.....argn]]:expression
lambda [参数]:表达式
例如:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
x=1 #全局变量
sum=lambda x:x+1; #尝试修改全局变量
print('相加之后:',sum(x))
print('x:',x)
结果:
相加之后:2
x:1
说明全局变量并没有被修改。
lambda小用法:
lambda n:返回值 if *** else ***