''' 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']