(1)内置函数map():它可以将一个单参数函数依次作用到一个序列迭代器对象的每一个元素,并返回一个map()对象作为结果,其中每个元素都是原序列中元素经过该函数处理后的结果,该函数不对原序列或迭代器对象做为何修改
>>> list(map(str,range(5)))['0', '1', '2', '3', '4']
(2)内置函数reduce():它可以将一个接收两个参数的函数以累积的方式从左到右依次作用到一个序列或迭代器对象的所有元素上。它不局限于数值类型。

>>> from functools import reduce>>> seq=[1,2,3,4,5,6,7,8,9]>>> reduce(lambda x,y:x+y,seq)45>>> def add(x,y):returnx+y>>> reduce(add,range(10))45
(3)内置函数filter():将一个单参数函数作用到一个序列上,返回该序列中使得该函数返回值为True的那些元素组成的列表、元组、字符串
>>>seq=['fool','x12','abc','???','......','$%*']>>> def func(x):returnx.isalnum()>>> list(filter(func,seq))['fool', 'x12', 'abc']>>> [x for x in seq ifx.isalnum()]['fool', 'x12', 'abc']>>> (filter(lambdax:x.isalnum(),seq))<filter object at 0x0216CFD0>
isalnum():测试字符串是否为数字或字母
文章转载自糟老头修炼记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




