python常用的高阶函数filter/map/sorted/reduce的使用

(一)、filter()函数的简介和语法和使用

举个栗子:
def is_even(n):
return n%2==0 #找出偶数
list01=filter(is_even,[1,2,3,4,5,6])
print(list(list01))#这里要注意:filter默认返回的是filter类型的 ,要转化的
run的结果为:[2,4,6]
filter(function,iterable)
#这里function为函数,iterable为序列。

#总结 filter()函数主要用于过滤序列,过滤掉不符合条件的元素,返回符合条件的元素组成新列表。

(二)、map函数的的简介与语法和使用
举个栗子:
def square(x):
return x**2
list01=map(square,[1,2,3,4,5])
print(list(list01)) #注意点是一样一样的
run的结果为:[1, 4, 9, 16, 25]
map(function,iterable)

#总结:map函数:将一个list转换成另一个新的list并返回,但是不改变原来的list列表

(三)、sorted函数的简介与语法和使用
sort只能对列表进行排序,sorted可以对所有可迭代类型进行排序,并且返回新的已排序的列表。
举个栗子:
students=[(“小马”,18,180),(“小王”,16,172),(“小刘”,17,166)]
student01=sorted(students,key=lambda student:student[1])
print(student01)
run的结果为:
[(‘小王’, 16, 172), (‘小刘’, 17, 166), (‘小马’, 18, 180)]
3.2 .对字典的值进行排序
dict={‘a’:1,‘b’:2}
dict01 = sorted(dict.items(), key = lambda x:x[1], reverse = True)
print(dict01)
run的结果为:
[(‘b’, 2), (‘a’, 1)]

#总结:sorted函数既可以对列表进行排序还可以对可迭代对象排序.

(四) 、reduce函数的简介与语法和使用
举个栗子:
from functools import reduce
def myadd(x, y):
return x + y
sum = reduce(myadd, (1, 2, 3, 4, 5, 6, 7))
print(sum)

run的结果为:
28
#总结:python中的reduce内建函数是一个二元操作函数,可以用来阶乘等,这里很多人容易与map函数搞混,注意点哈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值