99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

python高階函數(shù)詳解

python爬蟲知識分享 ? 來源:python爬蟲知識分享 ? 作者:python爬蟲知識分享 ? 2022-03-02 16:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

python高階函數(shù)

1. map 函數(shù)

map 函數(shù),它接收兩個參數(shù),第一個參數(shù)是一個函數(shù)對象(當(dāng)然也可以是一個lambda表達(dá)式),第二個參數(shù)是一個序列。

它可以實現(xiàn)怎樣的功能呢,我舉個例子你就明白了。

>>> map(lambda x: x*2, [1,2,3,4,5])
[2, 4, 6, 8, 10]

可以很清楚地看到,它可以將后面序列中的每一個元素做為參數(shù)傳入lambda中。

當(dāng)我們不使用 map 函數(shù)時,你也許會這樣子寫。

mylist=[]
for i in [1,2,3,4,5]:
    mylist.append(i*2)

2. filter 函數(shù)

filter 函數(shù),和 map 函數(shù)相似。同樣也是接收兩個參數(shù),一個lambda 表達(dá)式,一個序列。它會遍歷后面序列中每一個元素,并將其做為參數(shù)傳入lambda表達(dá)式中,當(dāng)表達(dá)式返回 True,則元素會被保留下來,當(dāng)表達(dá)式返回 False ,則元素會被丟棄。

下面這個例子,將過濾出一個列表中小于0的元素。

>>>filter(lambda x: x < 0, range(-5, 5))
[-5, -4, -3, -2, -1]

3. reduce 函數(shù)

reduce 函數(shù),也是類似的。它的作用是先對序列中的第 1、2 個元素進(jìn)行操作,得到的結(jié)果再與第三個數(shù)據(jù)用 lambda 函數(shù)運算,將其得到的結(jié)果再與第四個元素進(jìn)行運算,以此類推下去直到后面沒有元素了。

https://file.elecfans.com//web2/M00/33/8C/poYBAGIfLxCAarbfAAB0y7gjBWk239.png

這邊舉個例子你也就明白了。

>>>reduce(lambda x,y: x+y, [1,2,3,4,5])
15

它的運算過程分解一下是這樣的。

1+2=3
3+3=6
6+4=10
10+5=15

4. 注意點

以上幾個函數(shù),熟練的掌握它們的寫法,可以讓我們的代碼看起來更加的 Pythonic ,在某一程度上代碼看起來更加的簡潔。

如果你是新手呢,你需要注意的是,以上示例是在 Python2.x 環(huán)境下演示的。而在 Python3.x 中,卻有所不同,你可以自己嘗試一下。

這里總結(jié)一下:

第一點,map 和 filter 函數(shù)返回的都不再是一個列表,而是一個迭代器對象。這里以map為例

>>> map_obj = map(lambda x: x*2, [1,2,3,4,5])
>>> from collections.abc import Iterator
>>> isinstance(map_obj, Iterator)
True
>>> next(map_obj)
2
>>> list(map_obj)
[4, 6, 8, 10]

第二點,reduce 不可以直接調(diào)用,而是要先導(dǎo)入才能使用

from functools import reduce

審核編輯:符乾江
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4381

    瀏覽量

    64924
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86797
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    余承東疑再次喊話比亞迪,高階智駕如何界定?

    電子發(fā)燒友網(wǎng)報道(文 / 吳子鵬) 近日,比亞迪在智能化戰(zhàn)略發(fā)布會上宣布全系搭載 “天神之眼” 高階智駕系統(tǒng),這一舉措大幅降低了高階智駕的價格門檻。就連起售價不到 7 萬元的入門車型海鷗,也配備了
    的頭像 發(fā)表于 02-17 01:19 ?2444次閱讀

    永磁同步電機自適應(yīng)高階滑模Type-2模糊控制

    針對永磁同步電機數(shù)學(xué)模型不確定問題,提出一種自適應(yīng)高階滑模Type-2模糊控制方法。采用積分滑模面二階滑??刂坡?,保持傳統(tǒng)滑模控制的魯棒性并實現(xiàn)不含不確定高階輸入輸出有限時間穩(wěn)定;不需要預(yù)先確定干擾
    發(fā)表于 03-27 11:54

    詳解RTOS中的Hook函數(shù)

    Hook函數(shù)是RTOS中的一個關(guān)鍵特性,通過該函數(shù),用戶可以增強對任務(wù)管理的控制,定義系統(tǒng)行為。
    的頭像 發(fā)表于 03-24 16:14 ?394次閱讀

    使用Python實現(xiàn)xgboost教程

    使用Python實現(xiàn)XGBoost模型通常涉及以下幾個步驟:數(shù)據(jù)準(zhǔn)備、模型訓(xùn)練、模型評估和模型預(yù)測。以下是一個詳細(xì)的教程,指導(dǎo)你如何在Python中使用XGBoost。 1. 安裝XGBoost
    的頭像 發(fā)表于 01-19 11:21 ?1385次閱讀

    輕舟智航中高階智駕解決方案再獲項目定點

    近日,輕舟智航宣布其基于地平線征程6M打造的中高階智駕解決方案「輕舟乘風(fēng)」正式獲得頭部新勢力車企量產(chǎn)項目定點。目前,輕舟智航基于征程5的智駕方案已取得規(guī)?;慨a(chǎn)。此次基于征程6M再獲車企量產(chǎn)定點,意味著輕舟智航已基于地平線征程平臺建立面向中高階智駕量產(chǎn)的可靠實力。
    的頭像 發(fā)表于 12-26 15:26 ?686次閱讀

    各類Modbus功能接口函數(shù)詳解

    函數(shù)對應(yīng)于功能碼01(0x01)讀取線圈/離散量輸出狀態(tài)(Read CoilStatus/DOs),其中,所讀取的值存放于參數(shù)uint8_t * dest指向的數(shù)組空間因此dest指向的空間必須足夠大,其大小至少為nb * sizeof(uint8_t)個字節(jié)。
    的頭像 發(fā)表于 12-11 17:12 ?2628次閱讀
    各類Modbus功能接口<b class='flag-5'>函數(shù)</b><b class='flag-5'>詳解</b>

    Python代理技術(shù)詳解:從入門到進(jìn)階

    Python代理技術(shù)是一種在網(wǎng)絡(luò)編程中廣泛使用的技術(shù),它允許通過代理服務(wù)器發(fā)送和接收網(wǎng)絡(luò)請求。
    的頭像 發(fā)表于 11-12 07:06 ?641次閱讀

    如何用python控制usb2any?

    我想用python控制usb2any,在網(wǎng)上搜索后得到的關(guān)于usb2any的資料很少,是否有官方的usb2any函數(shù)庫?
    發(fā)表于 11-08 14:36

    SUMIF函數(shù)與SUMIFS函數(shù)的區(qū)別

    SUMIF函數(shù)和SUMIFS函數(shù)都是Excel中用于條件求和的函數(shù),它們可以幫助用戶根據(jù)特定的條件對數(shù)據(jù)進(jìn)行求和。盡管它們的基本功能相似,但在使用場景和功能上存在一些差異。以下是對這兩個函數(shù)
    的頭像 發(fā)表于 10-30 09:51 ?7537次閱讀

    Python常用函數(shù)大全

    Python 世界里,有一些寶藏函數(shù)和模塊,它們可以讓你編程更輕松、代碼更高效。這篇文章將帶你一一認(rèn)識這些神器,讓你的開發(fā)生活瞬間輕松不少!
    的頭像 發(fā)表于 10-27 17:20 ?921次閱讀

    如何用python控制usb2any?

    我想用python控制usb2any,在網(wǎng)上搜索后得到的關(guān)于usb2any的資料很少,是否有官方的usb2any函數(shù)庫?
    發(fā)表于 09-27 06:44

    【每天學(xué)點AI】一個例子帶你了解Python裝飾器到底在干嘛!

    進(jìn)行“加料”呢?Python裝飾器提供了一個更為優(yōu)雅的方式來增強現(xiàn)有函數(shù)的行為,并且不需要修改現(xiàn)有的函數(shù)代碼及調(diào)用方式。接下來通過一個案例來介紹一下裝飾器的原理和實
    的頭像 發(fā)表于 09-20 16:54 ?798次閱讀
    【每天學(xué)點AI】一個例子帶你了解<b class='flag-5'>Python</b>裝飾器到底在干嘛!

    量子計算場景實用秘籍:開物SDK之“高階函數(shù)降階”

    現(xiàn)實應(yīng)用場景往往具有復(fù)雜的多變量交互作用和非線性行為,在數(shù)學(xué)上均屬于高階問題,存在于實際應(yīng)用中的各個領(lǐng)域,如圖像處理中的去噪和超分辨率、工程設(shè)計與優(yōu)化、金融工程中的期權(quán)定價和投資組合優(yōu)化、醫(yī)療領(lǐng)域
    的頭像 發(fā)表于 08-29 11:14 ?1424次閱讀
    量子計算場景實用秘籍:開物SDK之“<b class='flag-5'>高階</b><b class='flag-5'>函數(shù)</b>降階”

    pytorch和python的關(guān)系是什么

    在當(dāng)今的人工智能領(lǐng)域,Python已經(jīng)成為了最受歡迎的編程語言之一。Python的易學(xué)易用、豐富的庫和框架以及強大的社區(qū)支持,使其成為了數(shù)據(jù)科學(xué)、機器學(xué)習(xí)和深度學(xué)習(xí)等領(lǐng)域的首選語言。而在深度學(xué)習(xí)領(lǐng)域
    的頭像 發(fā)表于 08-01 15:27 ?3285次閱讀

    Python建模算法與應(yīng)用

    Python作為一種功能強大、免費、開源且面向?qū)ο蟮木幊陶Z言,在科學(xué)計算、數(shù)學(xué)建模、數(shù)據(jù)分析等領(lǐng)域展現(xiàn)出了卓越的性能。其簡潔的語法、對動態(tài)輸入的支持以及解釋性語言的本質(zhì),使得Python在多個平臺
    的頭像 發(fā)表于 07-24 10:41 ?1274次閱讀