教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

python3中的filter()函數(shù)

更新時間:2018年12月19日14時48分 來源:傳智播客 瀏覽次數(shù):

filter() 函數(shù)是一個對于可迭代對象的過濾器,過濾掉不符合條件的元素,返回的是一個迭代器,如果要轉(zhuǎn)換為列表,可以使用 list() 來轉(zhuǎn)換。
該函數(shù)接收兩個參數(shù),第一個為函數(shù)的引用或者None,第二個為可迭代對象,可迭代對象中的每個元素作為參數(shù)傳遞給函數(shù)進行判,然后返回 True 或 False,最后將返回 True 的元素放到迭代器中
下面看下fiter()的用法:
第一個參數(shù)為None: 
[Python] 純文本查看 復(fù)制代碼
1
2
3
4
my_list = [1, '', 2, ' ', 3, 3]
new_list = list(filter(None, my_list))    # 注意:為None時,僅僅是過濾掉'', 而不是空的字符串' '
print(new_list)
# 結(jié)果為:[1, 2, ' ', 3, 3]

第二個參數(shù)為函數(shù)的引用:
[Python] 純文本查看 復(fù)制代碼
1
2
3
4
5
6
7
8
# 過濾出列表中的偶數(shù)
def is_even(num):
        return num % 2 == 0
new_list = list(filter(is_even, list(range(1, 11))))
print(new_list)
# 結(jié)果為:[2, 4, 6, 8, 10]



作者:傳智播客人工智能+Python培訓(xùn)學(xué)院

首發(fā):http://python.itcast.cn

0 分享到:
和我們在線交談!