色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

    文章

    4800

    瀏覽量

    84834

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

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

收藏 人收藏

    評論

    相關推薦

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

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

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

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

    Python常用函數大全

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

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

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

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

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

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

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

    python函數的萬能參數

    我們通過簡單的事例來展示函數的萬能參數,我們先寫最簡單的
    的頭像 發表于 07-17 14:56 ?357次閱讀
    <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 ?1275次閱讀

    內置超級電容模塊的故障指示器有哪些特性?

    內置超級電容模塊的故障指示器有哪些特性?安裝在輸配電線路、電力電纜及開關柜進出線上的故障指示器在電流流通的線路中起著非常重要的作用,旦線路發生故障,巡線人員可以利用指示燈的報警顯示快速的確定故障
    的頭像 發表于 06-04 09:39 ?483次閱讀
    <b class='flag-5'>內置</b><b class='flag-5'>超級</b>電容模塊的故障指示器有哪些特性?

    100G Lambda MSA協議資源免費下載

    100G Lambda MSA
    的頭像 發表于 05-31 16:31 ?430次閱讀

    如何使用Python生成四位隨機數字

    為了實現這些目標,Python 為我們提供了random() 模塊。random() 是內置Python 模塊,用于生成隨機數。
    的頭像 發表于 04-15 12:47 ?702次閱讀

    函數發生器的作用,概念要點是什么

    概念。 理解迭代器和可迭代對象: 在深入探討函數生成器之前,我們需要先了解迭代器和可迭代對象的概念。在Python中,迭代是種訪問集合元素的方式,無論集合的大小如何。迭代器是
    的頭像 發表于 02-23 16:01 ?563次閱讀

    output函數怎么用

    output 函數通用的術語,并不特指某個具體的編程語言或軟件工具。 如果你在使用 Python 編程語言,那么可能是指 print 函數
    的頭像 發表于 02-23 14:21 ?1281次閱讀

    TDK-Lambda電源如何使用?

    TDK-Lambda電源如何使用?
    的頭像 發表于 02-18 14:29 ?846次閱讀
    TDK-<b class='flag-5'>Lambda</b>電源如何使用?

    python中open函數的用法詳解

    python中open函數的用法詳解 Python中的open()函數用于打開文件。它接受文件名和模式作為參數,并返回
    的頭像 發表于 01-30 15:31 ?2177次閱讀
    主站蜘蛛池模板: 精品国产国产精2020久久日| 99久久精品费精品蜜臀AV| 网友自拍偷拍| 1234成人网| 国产精品18久久久久久欧美网址| 久久免费看少妇高潮A片JA | 越南女子杂交内射BBWXZ| youjizz怎么看| 久热在线这里只有精品7| 武侠古典久久亚洲精品| va亚洲va天堂va视频在线| 九九热国产视频| 素人约啪第五季| 产传媒61国产免费| 男女生爽爽爽视频免费观看| 一个人免费观看HD完整版 | 久久99re2在线视频精品| 手机在线播放成人亚洲影院电影| 97亚洲狠狠色综合久久久久| 国色天香视频在线社区| 视频一区国产第一页| qvod欧美电影| 欧美日韩午夜群交多人轮换| 最新国产在线视频| 精品人妻无码一区二区三区蜜桃臀 | 国产亚洲视频在线| 日日射夜夜干夜夜插在线播放| 99久久精品6在线播放| 玖玖爱这里只有精品视频| 夜夜国产亚洲视频香蕉| 国产亚洲精品久久久久| 手机看片一区二区| 俄罗斯9一14 young处| 日本精油按摩| 动漫美女人物被黄漫在线看| 秋秋影视午夜福利高清| V8成品人视频| 日本一区不卡在线播放视频免费| 超大BBWWW| 熟妇少妇任你躁在线无码| 国产精品久久大陆|