每个函数分别以一个示例来示意它的定义和用法 ~_~
1.map (function, *iterable)
返回一个可迭代对象,此可迭代对象用函数function对可迭代对象iterable中的每一个元素作为参数计算后得到新的数据
示例:
1**2 + 2**2 +3**2 + …+9**2 (1~9的平方和)
方法1:自定义函数计算x的平方
def power2(x):
return x**2
print(sum(map(power2,range(1,10))))
方法2 :匿名函数lambda计算x的平方
print(sum(map(lambda x : x**2,range(1,10)))
)
2.filter(function, iterable)
作用:
1.)筛选可迭代对象iterable中的数据,返回一个可迭代对象,此可迭代对象只返回iterable中符合条件的数据
2.) Function将对iterable中提供的每个数据进行布尔求值, True保留,False丢弃
示例:
用filter函数将1~100之间所有的素数放入列表L中
def isprime(x):
if x<2:
return False
for i in range(2,x):
if x % i == 0:
return False
return True
L=list(filter(isprime,range(100)))
print(L)
3.sorted (iterable, key=None, reverse= False)
作用:将原可迭代对象的数据进行排序,生成排序后的列表
说明:
1.) Iterable 可迭代对象
2.)Key 函数是用来提供一个值,这个值将作为排序的依据,如果不给出key函数,则用原数据的值进行比较和排序
3.)Reverse标志用来设置是否降序排序
示例:
names=[‘Tom’,’Jerry’,’Spike’,’Tyke’]
排序的依据为字符串反序’moT’,’yrreJ’,’ekyT’,’ekipS’
结果:[‘Spike’,’Tyke’,’Tom’,’Jerry’]
names=['Tom','Jerry','Spike','Tyke']
def rever(s):
s=s[::-1]
return s
L=sorted(names,key=rever)
print(L)