了解Python 函數中的參數綁定
假設您希望建立一個函數,稍後可以使用預先定義的特定參數或更少的附加參數來呼叫該函數論據。在Python中如何實現這一點?
解:functools.partial
解在於使用functools.partial函數。它會傳回一個可呼叫的函數,該函數包裝了一個函數,並凍結了其部分或全部參數。這允許您稍後調用已套用凍結參數的包裝函數。
範例用法
讓我們示範如何使用綁定參數functools.partial:
import functools print_hello = functools.partial(sys.stdout.write, "Hello world\n") print_hello()
輸出:
Hello world
輸出:
輸出:
print_hello = lambda *a, **kw: sys.stdout.write("Hello world\n", *a, **kw)輸出:輸出:此程式碼建立一個函數print_hello,在呼叫時將始終列印“Hello world”。 functools.partial 函數已將 sys.stdout.write 的第一個參數綁定到字串「Hello world」。 等效Lambda 表達式上面的程式碼是等效的到下面的lambda 表達式:換句話說, functools.partial 提供了一種方便的方式透過將參數部分應用到現有函數來建立新函數。
以上是如何使用 functools.partial 預先定義 Python 函數的參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!