目錄
Python 中的 filter() 函數
Python 中的 filter() 函數可以將函數应用到序列的每個元素上,並返回使函數返回值為 True 的元素的序列。它可以讓我們快速地過濾出序列中符合條件的元素,而不需要使用 for 迴圈。
例如,我們可以使用 filter() 函數來過濾出一個列表中的所有偶數:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] def is_even(x): return x % 2 == 0 even_numbers = list(filter(is_even, numbers)) print(even_numbers)
執行上面的程式碼,會得到以下輸出:
[2, 4, 6, 8, 10]
可以看到,我們使用 filter() 函數將列表中的所有偶數過濾出來了。
另外,我們也可以使用 filter() 函數來過濾出一個字典中的所有元素:
ages = { "Alice": 22, "Bob": 27, "Carol": 18, "Dave": 32 } def is_adult(age): return age >= 18 adults = dict(filter(lambda x: is_adult(x[1]), ages.items())) print(adults)
執行上面的程式碼,會得到以下輸出:
{'Alice': 22, 'Bob': 27, 'Dave': 32}
可以看到,我們使用 filter() 函數將字典中的所有成年人過濾出來了。
總結來說,Python 中的 filter() 函數可以讓我們快速地過濾出序列中符合條件的元素,而不需要使用 for 迴圈,是一個非常有用的函數。