天天看點

《Python資料科學指南》——1.13 将函數作為參數傳遞

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

python支援高階函數功能:将一個函數作為另一個函數的參數傳遞。

我們将前面一個例子中的函數square_input ()重寫,以此示範一個函數是如何被作為另一個函數的參數進行傳遞。

請看如何将一個函數作為另一個函數的參數進行傳遞。

我們在第1步中定義了函數apply_func,它有兩個變量參數,第1個是一個函數,第2個是一個序列。我們使用了map函數(後續章節将介紹)将給定的函數應用到序列中的所有元素。

接着,我們在清單上調用apply_func,先是square_input函數,然後是log函數,輸出的結果如下。

<code>[4, 9, 16]</code>

你會發現,所有的清單元素都被求出了平方值,map函數将square_input函數應用到序列裡的所有元素上。

<code>[0.69314718055994529, 1.0986122886681098, 1.3862943611198906]</code>

同樣地,log函數也被應用到序列裡的所有元素上。