四、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']