在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

推薦一個Python超級好用的內置函數lambda

工程師鄧生 ? 來源:Python愛好者集中營 ? 作者:欣一 ? 2022-09-13 18:09 ? 次閱讀

今天來給大家推薦一個Python當中超級好用的內置函數,那便是lambda方法,本篇教程大致和大家分享:

什么是lambda函數

lambda函數過濾列表元素

lambda函數和map()方法的聯用

lambda函數和apply()方法的聯用

什么時候不適合使用lambda方法

什么是Lambda函數

在Python當中,我們經常使用lambda關鍵字來聲明一個匿名函數,所謂地匿名函數,通俗地來講就是沒有名字的函數,具體的語法格式如下所示

lambdaarguments:expression

其中它可以接受任意數量的參數,但是只允許包含一個表達式,而該表達式的運算結果就是函數的返回值,我們可以簡單地來寫一個例子

(lambdax:x**2)(5)

output

25

過濾列表中的元素

那么我們如何來過濾列表當中的元素呢?這里就需要將lambda函數和filter()方法聯合起來使用了,而filter()方法的語法格式

filter(function,iterable)

function -- 判斷函數

iterable -- 可迭代對象,列表或者是字典

其中我們有這么一個列表

importnumpyasnp

yourlist=list(np.arange(2,50,3))

其中我們想要過濾出2次方之后小于100的元素,我們來定義一個匿名函數,如下

lambdax:x**2<100

最后出來的結果如下所示

list(filter(lambdax:x**2<100,?yourlist))

output

[2,5,8]
要是遇上復雜的計算過程,小編這里還是推薦大家自己自定義一個函數,但若是簡單的計算過程,lambda匿名函數絕對是最佳的選擇

和map()函數的聯用

map()函數的語法和上面的filter()函數相近,例如下面這個匿名函數

lambdax:x**2+x**3

我們將其和map()方法聯用起來

list(map(lambdax:x**2+x**3,yourlist))

output

poYBAGMgVzCAHT9FAAAVBIL3cpM153.jpg

當然正如我們之前提到的lambda匿名函數可以接受多個數量的參數,我們這里就可以來嘗試一下了,例如有兩組列表


poYBAGMgV0SAIn2pAAAcfRNDtrs070.jpg

我們同樣使用map()方法來操作,代碼如下

list(map(lambdax,y:x**2+y**2,yourlist,mylist))

output

poYBAGMgV1mARc25AAAUeWgv-fg213.jpg


和apply()方法的聯用

apply()方法在Pandas的數據表格中用的比較多,而在apply()方法當中就帶上lambda匿名函數,我們新建一個數據表格,如下所示

myseries=pd.Series(mylist)

myseries

output

pYYBAGMgV3aAVeTrAAAcH4HSSmk454.jpg

apply()方法的使用和前兩者稍有不同,map()方法和filter()方法我們都需要將可迭代對象放入其中,而這里的apply()則不需要

myseries.apply(lambdax:(x+5)/x**2)

output

poYBAGMgV4mAJri4AAApp0nNHD8015.jpg

而要是遇到DataFarme表格數據的時候,也是同樣地操作

poYBAGMgV5yAKbIAAAA0bsGJ8PQ676.jpg

output

pYYBAGMgV66ACJGPAAAmoR2Pwh8035.jpg

并且通過apply()方法處理可是比直接用str.upper()方法來處理,速度來的更快哦!!

不太適合使用的場景

那么不適合的場景有哪些呢?那么首先lambda函數作為一個匿名函數,不適合將其賦值給一個變量,例如下面的這個案例


squared_sum=lambdax,y:x**2+y**2

squared_sum(3,4)

相比較而言更好的是自定義一個函數來進行處理

poYBAGMgV82ALXHcAAAavlQ5BZw109.jpg

output

25

而我們遇到如下情景的時候,可以對代碼稍作簡化處理

pYYBAGMgV9-ATi_mAAAlDHFBlT0912.jpg

output

[3.16227766,5.0,6.324555320,7.0,8.062257748,9.0]

我們可以將其簡化成


poYBAGMgV_CASmWRAAApnJtOuwk580.jpg

output

[3.162277,5.0,6.324555,7.0,8.062257,9.0]

如果是Python當中的內置函數,尤其是例如math這種用于算數的模塊,可以不需要放在lambda函數中,可以直接抽出來用



審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • python
    +關注

    關注

    56

    文章

    4825

    瀏覽量

    86262

原文標題:淺談Python當中Lambda函數的用法

文章出處:【微信號:AI科技大本營,微信公眾號:AI科技大本營】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    函數指針的六常見應用場景

    函數指針在嵌入式開發中有著廣泛的應用,它讓代碼更加靈活,減少冗余,提高可擴展性。很多時候,我們需要根據不同的情況動態調用不同的函數,而函數指針正是實現這需求的重要工具。本文將介紹六
    的頭像 發表于 04-07 11:58 ?377次閱讀
    <b class='flag-5'>函數</b>指針的六<b class='flag-5'>個</b>常見應用場景

    TimSort:在標準函數庫中廣泛使用的排序算法

    排序算法呢? 本文將帶你走進 TimSort,在標準函數庫中廣泛使用的排序算法。 這個算法由工程師 Tim Peters 于 2001 年專為 Python 設計,并自
    的頭像 發表于 01-03 11:42 ?503次閱讀

    一個月速成python+OpenCV圖像處理

    適用于哪些場景,然后通過Python編寫代碼來實現這些算法,并應用于實際項目中,實現圖像的檢測、識別、分類、定位、測量等目標。本文將介紹高效學習Python+O
    的頭像 發表于 11-29 18:27 ?406次閱讀
    <b class='flag-5'>一個</b>月速成<b class='flag-5'>python</b>+OpenCV圖像處理

    超級電容不如電池好用,然而事實真的如此嗎?

    超級電容是種新型的儲能器件,介于傳統電容器與電池之間,既具有傳統電容的功率特性,又有電池的能量特性。
    的頭像 發表于 11-12 17:00 ?917次閱讀
    <b class='flag-5'>超級</b>電容不如電池<b class='flag-5'>好用</b>,然而事實真的如此嗎?

    亞馬遜云科技推出Amazon Lambda SnapStart功能

    攜手,在其北京與寧夏區域成功部署了Amazon Lambda SnapStart功能。這創新技術顯著提升了基于Java的Lambda函數的啟動性能,最高可達10倍之多。
    的頭像 發表于 10-30 10:59 ?632次閱讀

    Python常用函數大全

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

    【每天學點AI】例子帶你了解Python裝飾器到底在干嘛!

    進行“加料”呢?Python裝飾器提供了更為優雅的方式來增強現有函數的行為,并且不需要修改現有的函數代碼及調用方式。接下來通過
    的頭像 發表于 09-20 16:54 ?746次閱讀
    【每天學點AI】<b class='flag-5'>一</b><b class='flag-5'>個</b>例子帶你了解<b class='flag-5'>Python</b>裝飾器到底在干嘛!

    SK電訊將與Lambda合作打造AI數據中心

    韓國領先的電信巨頭SK電訊(SK Telecom)宣布了項重要合作計劃,將與美國知名的云GPU服務提供商Lambda攜手,于2024年12月在首爾共同推出先進的人工智能(AI)數
    的頭像 發表于 08-23 17:29 ?1545次閱讀

    超級電容VS電池,哪個更好用

    電容;超級電容;電池;儲能;能量密度; 摘要:超級電容和電池同為儲能裝置,各有優勢。超級電容充放電快、循環次數多,但能量密度低;電池充電慢、循環次數少,但能量密度高。可根據使用場景和需求選擇合適的儲能裝置。
    的頭像 發表于 07-29 11:47 ?736次閱讀

    ESP8266使用Lambda賦值創建崩潰的原因?

    ); Serial.printf(\"啟動 realloc lambda 測試...n\"); l=(reqHandler *) malloc(2*sizeof(reqHandler
    發表于 07-18 06:47

    python函數的萬能參數

    我們通過簡單的事例來展示函數的萬能參數,我們先寫最簡單的
    的頭像 發表于 07-17 14:56 ?556次閱讀
    <b class='flag-5'>python</b><b class='flag-5'>函數</b>的萬能參數

    opencv-python和opencv樣嗎

    樣。OpenCV(Open Source Computer Vision Library)是開源的計算機視覺和機器學習軟件庫,它提供了大量的圖像和視頻處理功能。OpenCV-Pytho
    的頭像 發表于 07-16 10:38 ?1957次閱讀

    python訓練出的模型怎么調用

    使用pickle模塊 pickle 是Python內置模塊,用于序列化和反序列化Python對象結構。使用 pickle 可以方便地
    的頭像 發表于 07-11 10:15 ?3224次閱讀

    用pycharm進行python爬蟲的步驟

    以下是使用PyCharm進行Python爬蟲的步驟: 安裝PyCharm和Python 首先,您需要安裝PyCharm和Python。PyCharm是
    的頭像 發表于 07-11 10:11 ?1350次閱讀

    如何使用Python進行神經網絡編程

    神經網絡簡介 神經網絡是種受人腦啟發的機器學習模型,由大量的節點(或稱為“神經元”)組成,這些節點在網絡中相互連接。每個節點可以接收輸入,對輸入進行加權求和,然后通過激活函數產生
    的頭像 發表于 07-02 09:58 ?706次閱讀
    主站蜘蛛池模板: 久久久精品波多野结衣 | 午夜视频网站在线观看 | 欧美性天天影院 | 色老头性xxxx老头视频 | 日本黄色网址大全 | 丁香花小说 | 免费一级特黄特色大片在线 | 无毒不卡在线播放 | 天天爱天天爽 | 狠狠天天 | 一区二区三区中文 | 成人sese| 黄篇网站在线观看 | 国产欧美一区二区日本加勒比 | 免费在线看视频 | 欧美黑人巨大xxxx猛交 | 手机在线小视频 | 婷婷色5月 | 亚偷熟乱区视频在线观看 | 亚洲第一中文字幕 | 国产三级日产三级日本三级 | 色天使久久综合给合久久97色 | 黄色网址中文字幕 | 国产精品午夜免费观看网站 | 男人j进女人j的视频一进一出 | 午夜精品久久久久久久第一页 | 91视频免费观看 | 亚洲系列中文字幕一区二区 | 激情六月综合 | 亚洲操| 欧美亚洲专区 | 国产特黄一级一片免费 | 欧美另类69 | 久优草 | 福利视频第一区 | 特级片免费看 | 男人的天堂欧美 | 综合7799亚洲伊人爱爱网 | 天堂网在线www最新版在线 | 国产三级a三级三级野外 | 日本69sex护士hd |