亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

章節
問答
課簽
筆記
評論
占位
占位

Python的匿名函數

高階函數可以接收函數做參數,有些時候,我們不需要顯式地定義函數,直接傳入匿名函數更方便。

在Python中,對匿名函數提供了有限支持。還是以map()函數為例,計算 f(x)=x * x時,f(x)就是作為參數傳入map的。
在前面,我們是顯式的定義了一個f(x)的函數,除此以外,其實可以直接傳入匿名函數。 
匿名函數使用lambda定義:lambda x: x * x,就可以完成原來顯式定義的f(x)函數的功能,冒號前面的x表示匿名函數的參數,后面的是一個表達式,匿名函數有個限制,就是只能有一個表達式,不寫return,返回值就是該表達式的結果。

result = [item for item in map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9])]
print(result) # ==> [1, 4, 9, 16, 25, 36, 49, 64, 81]

同理,對于reduce()函數,也同樣可以通過定義匿名函數來實現相同的邏輯。

from functools import reduce

reduce(lambda x, y: x + y, [1,3,5,7,9])

任務

對字符串排序時,有時候忽略大小寫排序更符合習慣。請利用sorted()高階函數和lambda匿名函數,實現忽略大小寫排序的算法。
輸入:['bob', 'about', 'Zoo', 'Credit']
輸出:['about', 'bob', 'Credit', 'Zoo']

?不會了怎么辦

參考答案:

sorted(['bob', 'about', 'Zoo', 'Credit'], key=lambda item: item.lower())
||

提問題

寫筆記

公開筆記
提交
||

請驗證,完成請求

由于請求次數過多,請先驗證,完成再次請求

加群二維碼

打開微信掃碼自動綁定

您還未綁定服務號

綁定后可得到

  • · 粉絲專屬優惠福利
  • · 大咖直播交流干貨
  • · 課程更新,問題答復提醒
  • · 賬號支付安全提醒

收藏課程后,能更快找到我哦~

使用 Ctrl+D 可將課程添加到書簽

邀請您關注公眾號
關注后,及時獲悉本課程動態

舉報

0/150
提交
取消
全部 精華 我要發布
全部 我要發布
最熱 最新
只看我的

手記推薦

更多

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?