Python filter() 函式介紹

Python 的 filter() 函式是一個非常有用的函式,它可以讓你快速地過濾出你想要的資料。它可以讓你從一個資料序列中篩選出符合條件的資料,而不需要你自己寫迴圈來處理。

filter() 函式的語法如下:

filter(function, iterable)

其中,function 是一個函式,它接受一個參數,並且回傳一個布林值,True 或 False。iterable 是一個可迭代的資料序列,例如 list、tuple、dict 等。

filter() 函式會將 iterable 中的每一個元素傳入 function 中,如果 function 回傳 True,則該元素會被保留,如果回傳 False,則該元素會被過濾掉。最後,filter() 函式會回傳一個由符合條件的元素組成的資料序列。

範例

假設我們有一個 list,裡面有一些數字,我們想要篩選出其中大於 10 的數字,可以使用 filter() 函式來完成:

numbers = [2, 5, 8, 10, 15, 20]

def is_greater_than_10(num):
    return num > 10

greater_than_10 = filter(is_greater_than_10, numbers)

print(list(greater_than_10))

執行結果:

[15, 20]

可以看到,filter() 函式將 numbers 中大於 10 的數字篩選出來,並回傳一個由符合條件的元素組成的資料序列。

總結

Python 的 filter() 函式是一個非常有用的函式,它可以讓你快速地過濾出你想要的資料。它可以讓你從一個資料序列中篩選出符合條件的資料,而不需要你自己寫迴圈來處理。filter() 函式的語法為 filter(function, iterable),其中,function 是一個函式,它接受一個參數,並且回傳一個布林值,True 或 False;iterable 是一個可迭代的資料序列,例如 list、tuple、dict 等。filter() 函式會將 iterable 中的每一個元素傳入 function 中,如果 function 回傳 True,則該元素會被保留,如果回傳 False,則該元素會被過濾掉。最後,filter() 函式會回傳一個由符合條件的元素組成的資料序列。

Categorized in:

Tagged in: