五月综合激情婷婷六月,日韩欧美国产一区不卡,他扒开我内裤强吻我下面视频 ,无套内射无矿码免费看黄,天天躁,日日躁,狠狠躁

新聞動態(tài)

Python 列表映射后的平均值

發(fā)布日期:2021-12-12 09:15 | 文章來源:源碼之家

本篇閱讀的代碼片段來自于30-seconds-of-python。

1、average_by

def average_by(lst, fn=lambda x: x):
  return sum(map(fn, lst), 0.0) / len(lst)
# EXAMPLES
average_by([{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }], lambda x: x['n']) # 5.0

該函數(shù)用于在列表中求取平均數(shù)。該代碼片段中主要使用了lambda表達式和map函數(shù)。該函數(shù)的主要邏輯是使用lambda表達式和map函數(shù)提取由待計算的數(shù)值組成的迭代器,然后使用sum函數(shù)計算列表的和,再除以列表長度。

2、lambda表達式

形如lambda parameters: expression的表達式可以創(chuàng)建一個匿名函數(shù)。在該代碼片段中,lambda表達式出現(xiàn)在函數(shù)average_by的參數(shù)定義中,作為一個參數(shù)傳給了fn。因此在average_by函數(shù)體中fn作為剛剛在參數(shù)中定義的函數(shù)發(fā)揮作用。

函數(shù)average_by的默認參數(shù)中的lambda表達式是一個直接返回輸入?yún)?shù)的函數(shù)。在例子中,向average_by傳入的匿名函數(shù)返回字典中key值為n項的值。

3、map函數(shù)

map函數(shù)是Python內(nèi)置的一個高階函數(shù),這個函數(shù)很有意思,它的參數(shù)是一個函數(shù)以及一個可迭代對象。它會返回一個迭代器,這個迭代器會將參數(shù)中的函數(shù)應用在參數(shù)中可迭代對象上。

4、其他類似函數(shù)

在30-seconds-of-python中還有一些類似的代碼片段。在理解了average_by函數(shù)之后,這些都很容理解。

4.1 max_by

def max_by(lst, fn):
  return max(map(fn, lst))
# EXAMPLES
max_by([{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }], lambda v : v['n']) # 8

4.2 min_by

def min_by(lst, fn):
  return min(map(fn, lst))
# EXAMPLES
min_by([{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }], lambda v : v['n']) # 2

4.3 sum_by

def sum_by(lst, fn):
  return sum(map(fn, lst))
# EXAMPLES
sum_by([{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }], lambda v : v['n']) # 20

到此這篇關于Python 列表映射后的平均值的文章就介紹到這了,更多相關Python 列表映射內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持本站!

版權聲明:本站文章來源標注為YINGSOO的內(nèi)容版權均為本站所有,歡迎引用、轉載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內(nèi)容涉嫌侵權,請聯(lián)系alex-e#qq.com處理。

相關文章

實時開通

自選配置、實時開通

免備案

全球線路精選!

全天候客戶服務

7x24全年不間斷在線

專屬顧問服務

1對1客戶咨詢顧問

在線
客服

在線客服:7*24小時在線

客服
熱線

400-630-3752
7*24小時客服服務熱線

關注
微信

關注官方微信
頂部