這期內容當中小編將會給大家帶來有關Python中lambda和def的區別,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
在Python中lambda和def都是用來創建函數的,但是這兩者有什么區別呢?先來看一個案例分析:
示例程序:
>>> f1 = lambda x,y,z: x*2+y+z # lambda帶有多個參數 >>> print f1(3,2,1) 9 >>> f3 = lambda i:i*2 # lambda帶有一個參數 >>> print f3(7) 14 >>> def fun1(n): ... return lambda m:m**n # m的n次方 ... >>> def fun2(m, n): ... return m+n ... >>> f2 = fun1(2) # 動態生成一個函數 >>> print f2(4) 16 >>> print fun2(3, (lambda x:x+1)(2)) # lambda用作函數參數 6 >>>
對比分析了python中lambda與def的用法,lambda和def的區別總結如下:
1、lambda用來創建匿名函數,不同于def(def創建的函數都是有名字的)。
2、lambda不會將結果賦給一個標識符,而def會將函數結果賦給一個標識符。
3、lambda是一個表達式,而def是一個語句
上述就是小編為大家分享的Python中lambda和def的區別了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。