当前位置: 代码迷 >> 综合 >> note11 filter sorted
  详细解决方案

note11 filter sorted

热度:85   发布时间:2023-12-16 08:39:11.0

1、filter()函数用于过滤序列,同样接收一个函数和一个序列,filter把传入的函数依次作用于每个元素,根据返回值是True还是False来过滤

2、sorted()函数可以对list进行排序

>>>sorted ([36, 5, -12, 9, -21])

[-21, -12, 5, 9, 36]

3、sorted也是高阶函数,可以接受key函数来实现自定义排序:

>>>sorted ([36, 5, -12, 9, -21], key = abs)

[5, 9, -12, -21, 36]
4、默认对字符串的排序是按照ASCII来比较大小,大写字母Z<a,大写Z会排在a之前

我们给sorted传入key函数,即可实现忽略大小写的排序:

>>> sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower)
['about', 'bob', 'Credit', 'Zoo']

5、反向函数reverse()

要进行反向排序,不必改动key函数,可以传入第三个参数reverse=True

>>> sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower, reverse=True)
['Zoo', 'Credit', 'bob', 'about']





  相关解决方案