Python基础学习之filter/sorted

filter和sorted

1、Python内建的filter()函数用于过滤序列,接受两个入参,将返回为True的保留

def is_odd(x):
  return x%2 == 1
re = [1,2,3,4]
s = filter(is_odd,re)
print(s)
print(list(s))

返回结果为:
<filter object at 0x0000000003934E80>
[1, 3]
filter()函数返回的是一个Iterator,也就是一个惰性序列,所以要强迫filter()完成计算结果,需要用list()函数获得所有结果并返回list。
2、Python内置的sorted()函数可以对list排序,默认按从小到大排序

s = [-1,5,-3,2]
s1 = sorted(s)
print(s1)

输出结果:[-3, -1, 2, 5]
还可以按指定规则排序,例如以下可实现按绝对值由小到大排序

s = [-1,5,-3,2]
s1 = sorted(s, key = abs)
print(s1)

输出结果为:[-1, 2, -3, 5]
若要按绝对值大小由大小排序可加reverse=True反转:

s = [-1,5,-3,2]
s1 = sorted(s, key = abs, reverse=True)
print(s1)

输出结果为:[5, -3, 2, -1]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值