码迷,mamicode.com
首页 > 编程语言 > 详细

python filter&sorted

时间:2018-02-20 11:19:55      阅读:173      评论:0      收藏:0      [点我收藏+]

标签:mil   函数   bsp   log   依次   edit   绝对值   删掉   sort   

filter

filter()接收一个函数和一个序列
和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素
在一个list中,删掉偶数,只保留奇数:
def is_odd(n):
return n % 2 == 1
list(filter(is_odd, [1, 2, 4, 5, 6, 9, 10, 15]))


sorted

Python内置的sorted()函数可以对list进行排序:
>>> sorted([36, 5, -12, 9, -21])
[-21, -12, 5, 9, 36]

sorted()函数也是一个高阶函数,它还可以接收一个key函数来实现自定义的排序,例如按绝对值大小排序:
>>> sorted([36, 5, -12, 9, -21], key=abs)
[5, 9, -12, -21, 36]

用一个key函数把字符串映射为忽略大小写排序
反向排序,不必改动key函数,可以传入第三个参数reverse=True:
>>> sorted([‘bob‘, ‘about‘, ‘Zoo‘, ‘Credit‘], key=str.lower, reverse=True)
[‘Zoo‘, ‘Credit‘, ‘bob‘, ‘about‘]

key也是接受一个函数,这个函数只接受一个元素
reverse:排序规则. reverse = True  降序 或者 reverse = False 升序

python filter&sorted

标签:mil   函数   bsp   log   依次   edit   绝对值   删掉   sort   

原文地址:https://www.cnblogs.com/wander-clouds/p/8454867.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!