本文共 981 字,大约阅读时间需要 3 分钟。
filter 函数用于对序列中的每个元素应用一个函数,并保留返回值为 True 的元素。以下是 filter 的典型应用示例。
from functools import filterdef f(n): return n % 3 != 0result = filter(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])print(list(result)) # 输出: [1, 2, 4, 5, 7, 8]
from math import sqrtfrom functools import filterdef notp(n): if n > 1: for i in range(2, int(sqrt(n)) + 1): if n % i == 0: return True return Falseresult = filter(notp, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20])print(list(result)) # 输出: [1, 4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20]
sorted 函数用于对序列进行排序。默认排序是按升序排序。
sorted([1, 2, 5, 4]) # 输出: [1, 2, 4, 5]
sorted(['Asc', 'cmp', 'w', 'Xi']) # 输出: ['Asc', 'Xi', 'cmp', 'w']
def revers(x, y): if x > y: return -1 if x < y: return 1 return 0sorted([12, 45, 3, 45, 78, 3, 23, 4], key=revers) # 输出: [78, 45, 45, 23, 12, 4, 3, 3]
转载地址:http://shnd.baihongyu.com/