filter()
函數用於返回一個迭代器,這裡的元素通過函數進行過濾,它有助於測試序列中的每個元素是否為真。
**filter(function, iterable)** #Where iterable can be a list, string, tuple, dictionary , set etc
過濾器()參數:
它以函數和可迭代為參數。
參數 | 描述 | 必需/可選 |
---|---|---|
功能 | 測試元素是否被接受的函數 | 需要 |
可迭代的 | 可迭代的可以是集合、列表、元組等… | 需要 |
過濾器()返回值
| 投入 | 返回值 |
| 可迭代(if 元素) | 迭代器(過濾列表) |
| 可迭代(如果不是元素) | 錯誤的 |
Python 中filter()
方法的示例
示例filter()
如何對可迭代列表起作用?
# list of letters
letters = ['a', 'b', 'd', 'e', 'i', 'j', 'o']
# function that filters vowels
def filter_vowels(letter):
vowels = ['a', 'e', 'i', 'o', 'u']
if(letter in vowels):
return True
else:
return False
filtered_vowels = filter(filter_vowels, letters)
print('The filtered vowels are:')
for vowel in filtered_vowels:
print(vowel)
輸出:
The filtered vowels are:
a
e
i
o
示例filter()
如何使用預定義的函數工作?
# Returns the elements which are multiples of 5
def multipleOf5(n):
if(n % 5 == 0):
return n
myList = [10, 25, 17, 9, 30, -5]
myList2 = list(filter(multipleOf5, myList))
print(myList2)
輸出:
[10, 25, 30, -5]
示例 3:filter()
方法在沒有 filter 函數的情況下如何工作?
# random list
random_list = [1, 'a', 0, False, True, '0']
filtered_list = filter(None, random_list)
print('The filtered elements are:')
for element in filtered_list:
print(element)
輸出:
The filtered elements are:
1
a
True
0
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/270005.html