天天看點

《Python資料科學指南》——1.16 使用lambda創造匿名函數

本節書摘來自異步社群《python資料科學指南》一書中的第1章,第1.16節,作者[印度] gopi subramanian ,方延風 劉丹 譯,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

匿名函數是由python中的lambda語句産生的。一個沒有被命名的函數就是匿名函數。

如果你掌握了将函數作為參數傳遞的内容,你會發現這節的示例和它非常相似。這節我們會傳遞一個預定義的函數,一個lambda函數。

我們寫一個簡單的操作小型資料集的示例,來解釋python中的匿名函數。

第1步中,do_list函數接受另一個函數作為參數。在輸入的清單和函數的共同作用下,do_list函數應用輸入的函數對給定的清單中的元素進行處理,對要轉換的數值進行求和,并傳回結果。

接着,對do_list函數進行調用,第1個參數是我們輸入的清單a,第2個參數是我們的lambda函數,我們來解碼它。

<code>lambda x:x**2</code>

通過關鍵字lambda,我們就聲明了一個匿名函數,跟着是定義一個函數的參數,本例中,x就是被傳遞給這個匿名函數的參數名。表達式中跟在冒号符之後的是傳回值,輸入參數按照表達式進行運算,并給出傳回值。本例中,輸入值的平方值被傳回作為輸出。第2個print語句裡,我們有另一個lambda函數,用來傳回給定輸入的立方值。