python filter()函數


描述:

  • filter()函數用於過濾序列,過濾掉不符合條件的元素,返回由符合條件元素組成的新列表
  • 接收兩個參數,第一個為函數,第二個為序列,序列的每個元素作為參數傳遞給函數進行判斷,返回True或False,將返回True的元素放到新列表中。

語法:

filter(function, iterable)

參數:

  • function:判斷函數
  • iterable:可迭代對象

返回值:

  • 列表

實例:

# 過濾列表中所有奇數

def is_odd(n):
    return n % 2 == 1

newlist = list(filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]))
print(newlist)

 輸出結果:

[1, 3, 5, 7, 9]

# 過濾出1~100中平方根是整數的數:

import math
def is_sqr(x):
    return math.sqrt(x) % 1 == 0

newlist = list(filter(is_sqrt, range(1, 101)))
print(newlist) 

 輸出結果:

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

 

當出現這種錯誤時,是因為沒將filter函數轉換成list。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM