0
假設我有以下:函數具有用於循環依賴性
def f(t):
return a*t
def g(t):
a=5
b=4
for u in range(t):
a=a+u
b=f(t)+b
return b
在每一步,將在「for」循環更新b中的F(T)具有在其定義的更新,或將它永遠是5?
假設我有以下:函數具有用於循環依賴性
def f(t):
return a*t
def g(t):
a=5
b=4
for u in range(t):
a=a+u
b=f(t)+b
return b
在每一步,將在「for」循環更新b中的F(T)具有在其定義的更新,或將它永遠是5?
對於f(t)
定義的更新值爲a
,它應該作爲參數傳遞給該函數。 如果你需要爲t
f(t)
每個值已經更新a
在做這樣的事情:
def f(t,a):
return a*t
也在你的f(t)
a
認定中是不確定。
然後在g(t)
修改f(t)
到f(t,a)
。
def g(t):
a=5
b=4
for u in range(t):
a=a+u
b=f(t,a)+b
return b
正如現在寫的'a'在函數f中是未知的。 – Matthias
這是一個錯誤,如果你在'def g()'裏面移動了'def f(t)',那麼你將在'g()'上創建一個閉包,並且它會得到更新的'a'也不需要通過't'。 – AChampion