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

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

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

3天內不再提示

在Python中為什么使用lambda

jf_78858299 ? 來源:人工智能知識分享 ? 作者:人工智能知識分享 ? 2023-04-03 11:44 ? 次閱讀

通常來說,lambda起到了一種函數速寫的作用,允許在使用的代碼內嵌入一個函數的定義。在你僅需要嵌入小段可執行代碼的情況下它們會帶來一個更簡潔的代碼結構。

lambda通常用來編寫跳轉表(jump table),也就是行為的列表或字典,能夠按照需要執行相應的動作。如下段代碼所示。

L = [lambda x: x ** 2, # Inline function definition

lambda x: x ** 3,

 lambda x: x ** 4]         # A list of 3 callable functions

for f in L:

print(f(2))                # Prints 4,8,16

print(L[0](3)) # Prints 9

當需要把小段的可執行代碼編寫進def語句從語法上不能編寫進的地方時,lambda表達式作為def的一種速寫來說是最為有用的。例如,上面的代碼片段,通過在列表常量中嵌入lambda表達式創建一個含有三個函數的列表。對等的def代碼可能需要在想要使用的環境之外有臨時性函數名稱和函數定義。

def f1(x): return x ** 2

def f2(x): return x ** 3 # Define named functions

def f3(x): return x ** 4

L = [f1,f2,f3] # Reference by name

for f in L:

print(f(2))                # Prints 4,8,16

print(L[0](3)) # Prints 9

實際上,我們可以用Python中的字典或者其他的數據結構來構建更多種類的行為表,從而做同樣的事情。下面給出另一個例子:

key = 'got'

{'already': (lambda: 2 + 2),

...'got': (lambda: 2 * 4),

...'one': (lambda: 2 ** 6)}[key]

name

for f in L:

print(f(2))                # Prints 4,8,16

print(L[0](3)) # Prints 9

這里,當Python創建這個字典的時候,每個嵌套的lambda都生成并留下了一個在之后能夠調用的函數。如果不是用lambda做這種工作,需要使用三個文件中其他地方出現過的def語句來替代,也就是在這些函數將會使用的那個字典外的某處需要定義這些函數。

def f1(): return 2 + 2...

def f2(): return 2 * 4

...

def f3(): return 2 ** 6

...

key = 'one'

{'already': f1,'got': f2,'one': f3}[key]()

64

同樣,上面代碼會實現相同的功能,但是def也許會出現在文件中的任意位置,即使它們只有很少的代碼。類似剛才lambda的代碼,提供了一種特別有用的可以在單個情況出現的函數:如果這里的三個函數不會在其他的地方使用到,那么將它們的定義作為lambda嵌入在字典中就是很合理的了。不僅如此,def格式要求為這些小函數創建變量名,這些變量名也許會與這個文件中的其他變量名發生沖突。

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

    關注

    3

    文章

    4345

    瀏覽量

    62953
  • 代碼
    +關注

    關注

    30

    文章

    4823

    瀏覽量

    69022
  • Lambda
    +關注

    關注

    0

    文章

    30

    瀏覽量

    9903
收藏 人收藏

    評論

    相關推薦

    Python面試必看的10個問題

    :delaelse:last=aprint(a)10、下面的代碼Python2的輸出是什么?解釋你的答案defdiv1(x,y): print "%s/%s = %s" % (x
    發表于 02-28 17:00

    lambda函數基礎

    lambda函數基礎lambda與def
    發表于 12-29 06:22

    python匿名函數的使用

    ,為什么今天我們要介紹它呢?首先我們要知道 lambda 是一個表達式,而不是一個語句。正因為這個特點,我們可以一些特殊的場景中去使用它。
    發表于 03-02 16:42

    python高階函數

    注意的是,以上示例是 Python2.x 環境下演示的。而在 Python3.x ,卻有所不同,你可以自己嘗試一下。這里總結一下:第一點,map 和 filter 函數返回的都不再
    發表于 03-02 16:47

    LAMBDA算法衛星導航定位的應用研究

    衛星導航定位,基于載波相位觀測值的RTK定位技術能夠達到厘米級的定位精度,其核心技術是整周模糊度的快速解算。采用LAMBDA方法能快速解算整周模糊度完成初始化,實時周跳檢
    發表于 07-06 16:39 ?22次下載

    關于Python的5種高級特征應用

    本文主要講解 Python 的 5 種高級特征,以及它們的用法。 1. Lambda 函數 Lambda 函數是一種比較小的匿名函數匿名是指它實際上沒有函數名。 Python 函數通常
    的頭像 發表于 09-27 15:56 ?1409次閱讀

    簡潔編寫Python 語法的7種技巧分享

    Python 是一門用途廣泛、易讀、而且容易入門的編程語言。但同時 python 語法也允許我們做一些很奇怪的事情。 1、使用 lambda 表達式重寫多行函數 眾所周知 python
    的頭像 發表于 12-20 11:03 ?875次閱讀

    Anaconda安裝python包seaborn

    Anaconda安裝python包seaborn(現代電源技術題庫)-Anaconda安裝pyt
    發表于 09-18 15:01 ?5次下載
    <b class='flag-5'>在</b>Anaconda<b class='flag-5'>中</b>安裝<b class='flag-5'>python</b>包seaborn

    抽樣Python是如何實現的

    今天來和大家聊聊抽樣的幾種常用方法,以及Python是如何實現的。
    的頭像 發表于 08-05 10:59 ?1255次閱讀

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

    Python當中,我們經常使用lambda關鍵字來聲明一個匿名函數,所謂地匿名函數,通俗地來講就是沒有名字的函數。
    的頭像 發表于 09-13 18:09 ?1045次閱讀
    推薦一個<b class='flag-5'>Python</b>超級好用的內置函數<b class='flag-5'>lambda</b>

    PythonLambda表達式

    Python Lambda 表達式是一種非常強大的工具,它可以讓你快速創建小型匿名函數,而不需要顯式地定義函數名稱。Lambda
    的頭像 發表于 04-19 15:49 ?871次閱讀

    網絡工程師學Python-Lambda表達式

    Python Lambda 表達式是一種非常強大的工具,它可以讓你快速創建小型匿名函數,而不需要顯式地定義函數名稱。Lambda
    的頭像 發表于 04-19 15:51 ?941次閱讀

    什么是Lambda函數

    和 map() 方法的聯用 lambda 函數和 apply() 方法的聯用 什么時候不適合使用 lambda 方法 什么是 Lambda 函數
    的頭像 發表于 10-17 11:27 ?1268次閱讀

    PythonAI的應用實例

    Python人工智能(AI)領域的應用極為廣泛且深入,從基礎的數據處理、模型訓練到高級的應用部署,Python都扮演著至關重要的角色。以下將詳細探討Python
    的頭像 發表于 07-19 17:16 ?1337次閱讀

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

    亞馬遜云科技推出Amazon Lambda SnapStart,大幅提升Java Lambda函數啟動性能   北京,2024年10月29日 —— 亞馬遜云科技近日宣布,與光環新網和西云數據
    的頭像 發表于 10-30 10:59 ?324次閱讀
    主站蜘蛛池模板: 日韩欧美中文字幕在线 | 蜜桃成熟时2在线观看完整版hd | 久久视频在线视频观看天天看视频 | 4388成人| 国产亚洲欧美日韩综合综合二区 | 精品网站一区二区三区网站 | 久久强奷乱码老熟女 | wwww晚晚干| 久久成人免费观看全部免费 | 午夜一级毛片看看 | 37大但人文艺术A级都市天气 | 2018国产天天弄谢 | 男生插曲女生身全过程 | 国内精品一级毛片免费看 | A级超碰视频在线观看 | 黑人特黄AA完整性大片 | 蜜臀AV精品一区二区三区 | 久久性生大片免费观看性 | 久久视频精品38线视频在线观看 | 欧美精品AV无码一区二区 | 香蕉久久日日躁夜夜嗓 | 95国产欧洲精华液 | 男女啪啪抽搐呻吟高潮动态图 | 樱桃bt在线www| 国产麻豆91网在线看 | 国产午夜精品福利久久 | 人妻无码AV中文系列 | 动漫美女和男人下载 | 欧美一区二区三区免费播放 | 极品网红液液酱粉嫩福利照子凌酱 | 99爱视频在线观看 | 狠狠色狠狠色综合日日91app | 成年人免费观看视频网站 | 欧美特级午夜一区二区三区 | 一个人的免费高清影院 | 樱桃视频影院在线播放 | 亚洲AV久久婷婷蜜臀无码不卡 | 大桥未久电影在线 | 色小说在线 | 2019天天射干网站 | 精品无码久久久久久国产百度 |