Python 中的部分函式?


每個人都喜歡寫可重用的程式碼,對嗎?那麼部分函式是一個很酷的東西可以學習。部分函式允許我們派生出一個帶有 x 個引數的函式,轉換為一個具有較少引數和常量值的函式,為更受限制的函式設定。

我們可以透過 functools 庫用 Python 編寫部分函式應用。以下是 functools 庫中部分函式的一個簡單示例,其中添加了 operator 庫的 add 函式。

>>> from functools import *
>>> from operator import *
>>> add(1,2)
3
>>> add1 = partial(add, 4)
>>> add1(6)
10
>>> add1(10)
14

Partial 是一個高階函式,以函式作為輸入(如 map 和 filter),但它還返回一個函式,該函式可以與程式中的任何其他函式以相同方式使用。

>>> list(map (add1, [1, 2, 3, 4, 5]))
[5, 6, 7, 8, 9]
>>> seven = partial(add1, 3)
>>> seven()
7

我們還可以在物件方法上使用部分函式,例如生成預設字串的列表 -

>>> str1 = "Hello, Python"
>>> helloStr = partial(str1.replace, "Python")
>>> helloStr("Tutorialspoint")
'Hello, Tutorialspoint'
>>> helloStr("Java")
'Hello, Java'

部分函式應用是一種非常有用的工具,尤其是在您需要對單個物件應用一系列不同的輸入或者需要將函式的一個引數繫結為常量時。

Python 函式可以幫助您輕鬆編寫程式碼,並且更易於維護。

更新日期:2019-07-30

1K+ 瀏覽量

開啟你的職業生涯

透過完成該教程獲得認證

開始學習
廣告
© . All rights reserved.