python-lambda用法
前言:
lambda函式也叫匿名函式,即,函式沒有具體的名稱。
一、基礎
lambda語句構建的其實是一個函式物件。匿名函式有個限制,就是隻能有一個表示式,不用寫return,返回值就是該表示式的結果。
lambda(a,b: a+b)
#關鍵字lambda表示匿名函式,冒號前是引數,可以有多個,用逗號隔開,冒號右邊的返回值。
lambda優點:
1、使用Python寫一些執行指令碼時,使用lambda可以省去定義函式的過程,讓程式碼更加精簡。
2、對於一些抽象的,不會別的地方再複用的函式,有時候給函式起個名字也是個難題,使用lambda不需要考慮命名的問題。
3、使用lambda在某些時候讓程式碼更容易理解。
舉一個簡單的例子: def f(x): return x**2 print f(4) Python中使用lambda的話,寫成這樣 g = lambda x : x**2 print g(4)
二、進階-內建函式
1、map()
遍歷序列,對序列中每個元素進行操作,最終獲取新的序列。
li = [11, 22, 33] sl = [1, 2, 3] new_list = map(lambda a, b: a + b, li, sl) print(list(new_list)) 結果輸出為: >>>[12,24,36]
2、reduce()
對於序列內所有元素進行累計操作
from functools import reduce li = [11,22,33] result = reduce(lambda a,b:a+b,li) # reduce的第一個引數,函式必須要有兩個引數 # reduce的第二個引數,要迴圈的序列 # reduce的第三個引數,初始值 print(result) 輸出結果: >>>66
3、filter()
對於序列中的元素進行篩選,最終獲取符合條件的序列
li = [11,22,33] new_list = filter(lambda a:a>22,li) print(list(new_list)) #filter第一個引數為空,將獲取原來序列 輸出結果: >>>[33]
以上~
作者:擱淺
出處: http://www.cnblogs.com/xiaoxi-3-/
如果對您有幫助,請關注我的同名簡書:https://www.jianshu.com/u/da1677475c27
本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線,否則保留追究法律責任的權利。
相關文章
- Qdrant用法;Qdrant在langchain裡的用法LangChain
- Yii2-application用法 (Yii::$app用法)APP
- __kindof用法
- requestAnimationFrame用法requestAnimationFrame
- JavaScript this用法JavaScript
- SVN用法
- static用法
- getComputedStyle() 用法
- JSONP 用法JSON
- phpstrtr()用法PHP
- crm用法
- sed用法
- typedef用法
- union用法
- GPG 用法
- seqkit用法
- sessionStorage 用法Session
- localStorage 用法
- SQLserver With As 用法SQLServer
- WebSocket 用法Web
- Screen 用法
- replace()用法
- VotingClassifier用法GC
- Hydra用法
- unique 用法
- iostat用法iOS
- Cmake用法
- JavaScript用法JavaScript
- JOptionPane用法
- enum用法
- supervisor用法
- RDD用法與例項(五):glom的用法
- allure用法(一)-配置資訊及基本用法
- jQuery $.each用法jQuery
- vue slot 用法Vue
- Git基本用法Git
- indexOf()的用法Index
- SQLServer MERGE 用法SQLServer