标签:有一个 def art 函数 python ret iter 说明 map
1、map/reduce
Python内建了map()
和reduce()
函数。
map()
函数接收两个参数,一个是函数,一个是Iterable
,map
将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator
返回。
举例说明,比如我们有一个函数f(x)=x2,要把这个函数作用在一个list [1, 2, 3, 4, 5]
上,就可以用map()
实现如下:
r=map(f,[1,2,3,4,5])
reduce
把一个函数作用在一个序列[x1, x2, x3, ...]
上,这个函数必须接收两个参数,reduce
把结果继续和序列的下一个元素做累积计算,其效果就是:
reduce(f,[x1,x2,x3,x4])=f(f(f(x1,x2),x3),x4)
( ((1X10+2)X10+3)X10+4)+5
char2int:返回数字字符对应的值,map()得到字符串对应的所有数值
fn将两个数值变成一个十位数,reduce()得到一串数对应的数
def normalize(name): return name[0].upper()+name[1:].lower() list(map(normalize,[‘adam‘, ‘LISA‘, ‘barT‘])) [‘Adam‘, ‘Lisa‘, ‘Bart‘]
def prod(L): return reduce(lambda x, y: x * y,L) prod([9,7,3,5]) 945
def str2float(s): for i in range(len(s)): if s[i]==‘.‘: break m=reduce(lambda x,y:x*10+y,map(int,s[0:i])) n=reduce(lambda x,y:x*0.1+y,map(int,s[:i:-1])) return m+n*0.1 str2float(‘123.45467‘)123.45467
标签:有一个 def art 函数 python ret iter 说明 map
原文地址:https://www.cnblogs.com/soberkkk/p/12623781.html