python匿名函數的使用
匿名函數(英語:anonymous function)是指一類無需定義標識符(函數名)的函數。通俗來說呢,就是它可以讓我們的函數,可以不需要函數名。
正常情況下,我們定義一個函數,使用的是 def
關鍵字,而當你學會使用匿名函數后,替代 def
的是 lambda
。
這邊使用def
和 lambda
分別舉個例子,你很快就能理解。
def mySum(x, y):
return x+y
mySum(2, 3)
# 5
(lambda x, y: x+y)(2, 4)
# 6
從上面的示例,我們可以看到匿名函數直接運行,省下了很多行的代碼,有沒有?
接下來,我們的仔細看一下它的用法
帶 if/else
>>>( lambda x, y: x if x < y else y )( 1, 2 )
1
嵌套函數
>>>( lambda x: ( lambda y: ( lambda z: x + y + z )( 1 ) )( 2 ) )( 3 )
6
遞歸函數
>>> func = lambda n:1 if n == 0 else n * func(n-1)
>>> func(5)
120
或者
>>> f = lambda func, n: 1 if n == 0 else n * func( func, n - 1 )
>>> f(f,4)
24
從以上示例來看,lambda 表達式和常規的函數相比,寫法比較怪異,可讀性相對較差。除了可以直接運行之外,好像并沒有其他較為突出的功能,為什么在今天我們要介紹它呢?
首先我們要知道 lambda 是一個表達式,而不是一個語句。正因為這個特點,我們可以在一些特殊的場景中去使用它。
審核編輯:符乾江
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
函數
+關注
關注
3文章
4327瀏覽量
62573 -
python
+關注
關注
56文章
4792瀏覽量
84627
發布評論請先 登錄
相關推薦
SUMIF函數與SUMIFS函數的區別
SUMIF函數和SUMIFS函數都是Excel中用于條件求和的函數,它們可以幫助用戶根據特定的條件對數據進行求和。盡管它們的基本功能相似,但在使用場景和功能上存在一些差異。以下是對這兩個函數
Python常用函數大全
在 Python 世界里,有一些寶藏函數和模塊,它們可以讓你編程更輕松、代碼更高效。這篇文章將帶你一一認識這些神器,讓你的開發生活瞬間輕松不少!
動態代理IP的匿名性和透明度,為主要考慮關鍵!
動態代理IP的匿名性和透明度是用戶選擇代理服務時需要考慮的關鍵因素。根據用戶的需求和場景,可以選擇不同匿名級別和透明度的代理服務來平衡隱私保護和網絡訪問的需求。
pytorch和python的關系是什么
在當今的人工智能領域,Python已經成為了最受歡迎的編程語言之一。Python的易學易用、豐富的庫和框架以及強大的社區支持,使其成為了數據科學、機器學習和深度學習等領域的首選語言。而在深度學習領域
opencv-python和opencv一樣嗎
不一樣。OpenCV(Open Source Computer Vision Library)是一個開源的計算機視覺和機器學習軟件庫,它提供了大量的圖像和視頻處理功能。OpenCV-Python
如何使用Python進行神經網絡編程
神經網絡簡介 神經網絡是一種受人腦啟發的機器學習模型,由大量的節點(或稱為“神經元”)組成,這些節點在網絡中相互連接。每個節點可以接收輸入,對輸入進行加權求和,然后通過一個激活函數產生輸出
函數發生器的作用,概念要點是什么
函數生成器是Python中非常強大的特性之一。它們允許我們以一種簡潔且高效的方式生成迭代器,從而幫助我們更好地處理大量數據或者在特定條件下生成無限數據。在本文中,我們將探討函數生成器的作用及其關鍵
output函數怎么用
output 函數是一個通用的術語,并不特指某個具體的編程語言或軟件工具。 如果你在使用 Python 編程語言,那么可能是指 print 函數。Python 中的 print
如何使用linux下gdb來調試python程序
如何使用linux下gdb來調試python程序? 在Linux下,可以使用GDB(GNU調試器)來調試Python程序。GDB是一個強大的調試工具,可以幫助開發者診斷和修復程序中的錯誤。在本文
python中open函數的用法詳解
python中open函數的用法詳解 Python中的open()函數用于打開文件。它接受文件名和模式作為參數,并返回一個文件對象。文件對象可用于讀取、寫入和管理文件。 open()
split在python中的用法
split在python中的用法 split()是Python中一個非常常用的字符串函數,它能夠根據指定的分隔符將一個字符串分割成多個子字符串,并返回一個包含這些子字符串的列表。本文將詳細介紹
評論