Python教程

python map&filter&reduce函数

本文主要是介绍python map&filter&reduce函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一:匿名函数  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))

  

 

这篇关于python map&filter&reduce函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!