四、lambda匿名函数、列表生成式

  1.lambda匿名函数

  2.列表生成式

 

1. lambda匿名函数

匿名函数不需要用def定义完整函数

格式:lambda 参数:表达式

参数可以是0个或多个参数

没有参数:

f=lambda :'hello'
print(f())
>>> hello

一个参数:

f=lambda x:x+2
print(f(3))

>>>
5

多个参数:

f=lambda m,n,x : m*n*x
print(f(3,2,4))

>>>
24

 

2.列表生成式

L=[x for x in range(1,10)]
>>> [1, 2, 3, 4, 5, 6, 7, 8, 9]

L = [x*x for x in  range(1,10)]
>>> [1, 4, 9, 16, 25, 36, 49, 64, 81]

L = [x*x for x in  range(1,10) if x%2==0]
>>> [2, 4, 6, 8]

两层循环:
L = [m+n for m in 'ABC' for n in 'XYZ']
>>> ['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']

字典:
d = {'x': 'A', 'y': 'B', 'z': 'C' }
L=[m+'='+n for m,n in d.items()]
>>> ['x=A', 'y=B', 'z=C']

L=['Hello', 'World', 'IBM', 'Apple']
L1=[s.lower() for s in L]
>>> ['hello', 'world', 'ibm', 'apple']

 

posted @ 2024-01-02 14:41  紫蕈  阅读(8)  评论(0编辑  收藏  举报