map与lambda结合使用
r=map(lambda x:xx,list_x)求list_x中所有元素的平方和;
多个参数时:
r=map(lambda x,y:xx+y,list_x,list_y)
当list_x,list_y值的数量不相同时,map会偏向数值少的那个
from functools import reduce
reduce模块,连续计算,连续调用lambda
list_x=[1,2,3,4,5,6]
r=reduce(lambda x,y:x+y,list_x)
print®
会取列表中的前两个元素,第二次调用时,会将第一次运算的结果当作第二次的x传入,y取第三个元素
((((1+2)+3)+4)+5)
r=reduce(lambda x,y:x+y,list_x,10) 这个10是初始值,第一次计算lambda时传入lambda中的x,即第一次是10+1
filter过滤不需要的元素
list_x=[1,0,1,0,0,1]
r=filter(lambda x:True if x==1 else False,list_x)
或r=filter(lambda x:x,list_x)
filter是一个集合(与map相似)
print(list®)
filter要求lambda必须返回可以表示真假的结果(或能表示真假的值0,1)
list_u=[‘a’,‘B’,‘c’,‘D’]
python判断大小写的函数
isupper()判断是否全大写,islower判断是否全小写