一:匿名函数 lambda,作用是不用写一个函数,使用lambda可直接返回
name = 'jack'
f = lambda name:name+'_sb'
res = f(name)
print(name)
结果 :jack_sb
二:map函数--相当于遍历可遍历列表,处理序列中每个元素,得到的结果是一个‘列表’,该‘列表’元素的个数与位置与原来一样
作法:map(方法名,可迭代列表)
map(lambda x:x+1,列表)
如:
num_1 = [1, 3, 5, 6, 19] def test_1(func, sz): num_2 = [] for i in sz: res = func(i) num_2.append(res) return num_2 print(test_1(lambda x: x ** 2, num_1))
以上代码等价于
num_1 = [1, 3, 5, 6, 19] print(list(map(lambda x:x+1,num_1)))
三:filter函数,相当于遍历留下条件为傎的可迭代列表中的值---对原来的列表进行操作,得到一个新的列表
person = ["sb_jack","sb_rose","aaa"] print(list(filter(lambda x:x.startswith("sb"),person)))
四:reduce函数:对原来的列表进行合并操作
from functools import reduce num_1 = [1, 3, 5, 6, 19] print(reduce(lambda x, y: x * y, num_1,100))