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

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

    文章

    4344

    瀏覽量

    62864
  • 代碼
    +關注

    關注

    30

    文章

    4820

    瀏覽量

    68881
  • Lambda
    +關注

    關注

    0

    文章

    30

    瀏覽量

    9897
收藏 人收藏

    評論

    相關推薦

    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 語法的7種技巧分享

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

    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 ?1238次閱讀

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

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

    Lambda表達式詳解

    C++11Lambda表達式用于 **定義并創建匿名的函數對象** ,以簡化編程工作。下面看一下Lambda表達式的基本構成。
    的頭像 發表于 02-09 11:28 ?1212次閱讀

    PythonLambda表達式

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

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

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

    什么是Lambda函數

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

    PythonAI的應用實例

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

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

    亞馬遜云科技推出Amazon Lambda SnapStart,大幅提升Java Lambda函數啟動性能   北京,2024年10月29日 —— 亞馬遜云科技近日宣布,與光環新網和西云數據
    的頭像 發表于 10-30 10:59 ?299次閱讀
    主站蜘蛛池模板: 久久性妇女精品免费 | 亚洲综合成人网 | 老湿司午夜爽爽影院榴莲视频 | 美女扒开内裤让男人桶 | 最新丁香六月 | 五月婷婷丁香色 | 国产精品久久永久免费 | 美国bj69 video18 | 亚洲成人aaa | 欧美亚洲综合另类成人 | 手机在线精品视频 | 久久精品.com | 人人干国产 | 色天使色婷婷在线影院亚洲 | 精品四虎免费观看国产高清午夜 | 九九久久国产精品大片 | 欧美影院一区二区三区 | xxxx人成高清免费图片 | 永久在线免费 | 色偷偷97 | 天天色天天干天天 | 日韩三级精品 | 一 级 黄 中国色 片 | 天堂bt资源在线官网 | 四虎国产精品影库永久免费 | 色香色香欲天天天影视综合网 | 深夜国产成人福利在线观看女同 | 天天看视频 | 精品国产免费观看一区高清 | 欧美激情αv一区二区三区 欧美激情第一欧美在线 | 欧美亚洲韩国国产综合五月天 | 色播五月婷婷 | 西西人体www303sw大胆高清 | 天堂社区在线观看 | 亚洲国产第一区二区香蕉 | 手机看片国产精品 | 日本黄页视频 | 久久国产精品亚洲综合 | 久久久久久久国产免费看 | 日本人xxxxxxxx6969 | 天天干人人 |