Python3 filter() 函數(shù)

2019-03-26 10:18 更新

Python3 filter() 函數(shù)

Python3 內(nèi)置函數(shù) Python3 內(nèi)置函數(shù)

描述

filter() 函數(shù)用于過(guò)濾序列,過(guò)濾掉不符合條件的元素,返回一個(gè)迭代器對(duì)象,如果要轉(zhuǎn)換為列表,可以使用 list() 來(lái)轉(zhuǎn)換。

該接收兩個(gè)參數(shù),第一個(gè)為函數(shù),第二個(gè)為序列,序列的每個(gè)元素作為參數(shù)傳遞給函數(shù)進(jìn)行判,然后返回 True 或 False,最后將返回 True 的元素放到新列表中。

語(yǔ)法

以下是 filter() 方法的語(yǔ)法:

filter(function, iterable)

參數(shù)

  • function -- 判斷函數(shù)。
  • iterable -- 可迭代對(duì)象。

返回值

返回一個(gè)迭代器對(duì)象

實(shí)例

以下展示了使用 filter 函數(shù)的實(shí)例:

過(guò)濾出列表中的所有奇數(shù):

#!/usr/bin/python3
def is_odd(n):
return n % 2 == 1
tmplist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
newlist = list(tmplist)
print(newlist)

輸出結(jié)果 :

[1, 3, 5, 7, 9]

過(guò)濾出1~100中平方根是整數(shù)的數(shù):

#!/usr/bin/python3
import math
def is_sqr(x):
return math.sqrt(x) % 1 == 0
tmplist = filter(is_sqr, range(1, 101))
newlist = list(tmplist)
print(newlist)

輸出結(jié)果 :

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

Python3 內(nèi)置函數(shù) Python3 內(nèi)置函數(shù)


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)