欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Python中的高階函數filter、map、reduce

系統 1624 0

1.filter()函數

filter() ?函數用于過濾序列,過濾掉不符合條件的元素,返回一個迭代器對象,如果要轉換為列表,可以使用? list() ?來轉換。

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

filter(function, iterable)

function -- 判斷函數。

iterable -- 可迭代對象。

返回一個可迭代的的對象。

比如:

判斷一個列表字符串中,是否包含數字,然后取出數字。

s=['12jk','29','322','gfhkd','283','90']
def list1(n):
if n.isdigit():
return n
h=filter(list1,s)
print(list(h))

結果:['29', '322', '283', '90']

2.map()函數

map()函數接收兩個參數,一個是函數,一個是序列,map 將傳入的函數依次作用到序列的每個元素,并把結果作為新的list返回。

比如:

將某個列表數字中,每個數字都進行加1,然后輸出新的列表。

s=[2,4,6,8,10]
def square(n):
return n+1
h=map(square,s)
z=list(h)
print(z)

3.reduce()函數

reduce()函數接收的參數和 map()類似,一個函數 f,一個list,但行為和 map()不同,reduce()傳入的函數 f 必須接收兩個參數,reduce()對list的每個元素反復調用函數f,并返回最終結果值。

比如:編寫一個f函數,接收x和y,返回x和y的和:

def f(x, y):
return x + y
調用 reduce(f, [1, 3, 5, 7, 9])時,reduce函數將做如下計算:

先計算頭兩個元素:f(1, 3),結果為4;
再把結果和第3個元素計算:f(4, 5),結果為9;
再把結果和第4個元素計算:f(9, 7),結果為16;
再把結果和第5個元素計算:f(16, 9),結果為25;
由于沒有更多的元素了,計算結束,返回結果25。
上述計算實際上是對 list 的所有元素求和。雖然Python內置了求和函數sum(),但是,利用reduce()求和也很簡單。

reduce()還可以接收第3個可選參數,作為計算的初始值。如果把初始值設為100,計算:

reduce(f, [1, 3, 5, 7, 9], 100)
結果將變為125,因為第一輪計算是:

計算初始值和第一個元素:f(100, 1),結果為101。

任務
Python內置了求和函數sum(),但沒有求積的函數,請利用recude()來求積:

輸入:[2, 4, 5, 7, 12]
輸出:2*4*5*7*12的結果


def prod(x, y):
return x*y

print reduce(prod, [2, 4, 5, 7, 12])

PS:以上內容和實例,摘自網上,如有雷同,請聯系我刪除。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲精品a级| 一级毛片在线看在线播放 | a视频在线 | 亚洲欧美日韩一区二区 | 久久观看 | av一区二区三区 | 欧美视频二区 | 视频一区二区三区四区五区 | 精品久久一二三区 | 91五月天| 91精品一区| 欧美日韩一二三区 | 天天夜夜人人 | 久久99草| 久久国产精品99久久久久久牛牛 | www操操| 99精品国产在热久久 | 咪咪色在线视频 | 久草在线网址 | 亚洲精品国产成人 | 国产精品色综合 | 久久婷婷是五月综合色狠狠 | 久碰香蕉精品视频在线观看 | 九九热免费视频在线观看 | 亚洲视频毛片 | 色a综合 | 午夜性啪啪A片免费AAA毛片 | 成人网av| a久久| 久久久久国产一区二区三区 | 免费看91| 国产在线观看91一区二区三区 | 亚洲美女综合 | 日本免费不卡在线一区二区三区 | 成人福利在线视频 | 久久亚洲春色中文字幕久久 | 国产高清在线视频 | 成人夜间视频 | 一级视频在线免费观看 | 国产精品美女久久久 | 草草影院w37 |