上一篇介绍了一些python中函数的基本用法,那么,现在就来谈一谈python中的一些内置函数吧
- python中的内置函数
1.map()函数
map()函数接受两个参数值,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回
li = [1,2,3,4,5,6,7,8] print(list(map(lambda x:x*x,li)))
运行结果
[1, 4, 9, 16, 25, 36, 49, 64]
2.reduce()函数
reduce把一个函数作用在一个序列[x1,x2,x3,x4,x5....]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,如同
reduce(func,[1,2,3])等同于func(func(1,2),3)
from functools import reduce li = [1,2,3,4,5,6,7,8,9] print(reduce(lambda x,y:x*y,li)) #等同于1*2*3*4*5*6*7*8*9
运行结果:
362880
3.filter函数
filter()也是接收一个函数和一个序列,和map()不同的是,filter()把传入的函数一次作用于每个元素,然后根据返回值是True还是False决定保留
还是丢弃该元素
#在一个列表中,删掉偶数,只保留奇数 li = [1,2,4,5,6,9,10,15] print(list(filter(lambda x:x%2 == 1,li)))
运行结果:
[1, 5, 9, 15]
4.sorted(iterable,/,*,key = None,reverse = False)函数
接收一个key函数来实现对可迭代对象进行自定义的排序
可迭代对象:列表,字符串,元组,集合,字典
key:接收一个函数,根据此函数返回的结果,进行排序
revese:排序方向,默认为从小到大,reveae = True为逆向
#对列表按照绝对值进行排序 li = [12,-23,17,-65,88,2] print(sorted(li,key=lambda x:abs(x)))
运行结果:
[2, 12, 17, -23, -65, 88]