-1
我想創建一個函數foo()
,它將輸出另一個函數。這個輸出函數是指數(或其他)與每次自由參數之和的總和。這個輸出函數應該具有所有的參數,加上一個自由變量。以遞歸方式創建一個函數在Python中每次迭代獲得變量
例子:
調用foo(3)
應該同等輸出的功能,lambda t,a1,a2,a3: exp(a1*t)+exp(a2*t)+exp(a3*t)
我試圖將程序是這樣的:
def foo(n):
fh = lambda t,A1:exp(A1*t)
def fg(j):
if (j==1):
return fh
else:
return lambda t,A1,A2:fg(j-1)(t,A1)+fh(t,A2)
return fg(n)
,但它顯然是錯誤的。我說foo(n)
可以通過「做」像lambda t,a1,...,a(n): foo(n-1)(t,a1,...,a(n-1))+exp(a(n)*t)
這樣的迭代獲得,但我沒有設法做到這一點在一個簡單的方法...
感謝您的幫助!