python学习笔记 -- filter() 过滤符合条件的可迭代序列
'''
filter: 过滤符合条件的可迭代序列
1.参数1: 函数 或 lambda表达式
2.参数2: 可迭代序列
'''
#函数: 过滤大于60分
def greater_than_60(x):
return x >= 60
scores = [88,67,95,58,86,99,43,66]
results = filter(greater_than_60, scores)
print(list(results)) #[88, 67, 95, 86, 99, 66]
#lambda表达式:
names = ['Tom', 'Jerry', 'Marry']
#过滤: 遍历列表names, 将每个列表元素保存在str_name中, 如果符合'r' in str_name条件, 则返回str_name
# 最终将所有符合条件的元素过滤出来.
result = filter(lambda str_name: 'r' in str_name, names)
print(list(result)) #['Jerry', 'Marry']
打印结果:
[88, 67, 95, 86, 99, 66]
['Jerry', 'Marry']

浙公网安备 33010602011771号