[英]The opposite of functools.partial
有一個庫 function 接受回調並使用一些 arguments 調用它:
def library_function(callback):
# crunching numbers
callback(result)
我不需要結果,但我仍然想處理庫 function 已經完成的事實,所以我將一個無效的 function 作為回調傳遞。 它會導致“無效參數計數”錯誤,所以我必須用 lambda 包裝我的回調以忽略該參數:
def nullary_callback():
print("Handled!")
library_function(lambda x: nullary_callback())
functools.partial
執行相反的任務:綁定某個參數並減少 function 的數量。 是否有任何標准助手可以增加忽略新添加的 arguments 的數量,所以我可以用它替換我的 lambda,或者我的方法已經足夠pythonic了?
為什么你的nullary_callback
沒有一個你不使用的參數? 這將使它成為您使用它的有效回調。
如果您需要一個始終有效的通用回調(因為它從不做任何事情):
def nullary_callback(*args, **kwargs):
print("Handled!")
library_function(nullary_callback)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.