python中是否有一種簡單的方法可以將需要args的函式作為沒有args的引數傳遞,并在目標函式中添加te args?我在想類似的東西:
def add(a,b):
return a b
def multiply(a,b):
return a * b
def destination(variable, func):
c = 5
d = 3
e = func(c , d) * variable
return e
s = 10
output1 = destination(s, add())
output2 = destination(s, multiply())
uj5u.com熱心網友回復:
您的想法是正確的,但不是將函式作為引數傳遞給目標,而是嘗試呼叫它并將回傳值作為引數傳遞。
嘗試這個:output1 = destination(s, add)
uj5u.com熱心網友回復:
()實際上是一個運算子,當在名稱后綴時表示“呼叫此物件”。括號之間的所有內容都被解釋為引數串列。物件可以是實作魔術__call__方法的不同類的函式或實體。
當你這樣做時add(),你正在呼叫add沒有引數的函式。但名稱add本身只是 python 中的另一個物件。您可以傳遞它,將其用作任何其他名稱,并使用引數串列呼叫它。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/494239.html
上一篇:嘗試一個功能,但我不斷收到錯誤
下一篇:按時間排列的行星位置
