欢迎来到“只读课堂”!
In [1]:
#我们把一个没有名字的函数称为“匿名函数”。In [2]:
#匿名函数(lambda表达式):In [3]:
#除了def语句之外,我们还可以使用lambda表达式创建函数 #lambda参数1,参数2,参数3,参数N: 表达式先写个最简单的:
In [4]:
f = lambda x : x*xIn [5]:
f(2)Out[5]:
4In [6]:
#结果是4,就是2乘2.这个函数是没有名字的。
In [7]:
#这个呢就是lambda表达式。In [8]:
func = lambda x,y=1 : x+yIn [9]:
func(1)Out[9]:
2In [10]:
func(2)Out[10]:
3In [11]:
func(3)Out[11]:
4In [12]:
#就是加一。lambda通常用来编写跳转表(jump table)也就是行为的列表或字典,能够按照需要执行相应的动作,比如说:
L = [lambda x:x2, lambda x:x3, lambda x:x*4]
for f in L:
print(f(2))
print(L[0] (2))取列表中的第一个lambda表达式,然后传递参数为2
In [13]:
#它是有规则的。In [14]:
mylist = [lambda x : x*x, lambda x:x*x*x, lambda x:x*x*x*x]In [15]:
mylistOut[15]:
[<function __main__.<lambda>>, <function __main__.<lambda>>, <function __main__.<lambda>>]In [16]:
#现在它会出现一些提示。In [17]:
mylist[0]Out[17]:
<function __main__.<lambda>>In [19]:
#它是一个lambda表达式。In [20]:
mylist[0](3)Out[20]:
9In [21]:
mylist[0]Out[21]:
<function __main__.<lambda>>In [22]:
for func in mylist: func(3)In [ ]:
func(3)In [27]:
#这就是跳转表,它可以调用里面一些列表内容。In [28]:
print("\n本次只读课堂的python教程就到这了,欢迎下一次的收看!\n") 本次只读课堂的python教程就到这了,欢迎下一次的收看!