我想創建一個變量,每次查詢時都會返回一個不同的值。如何創建動態變量?
這是我到目前爲止有:
import datetime
def getVal():
return datetime.datetime.now().time()
TMP_VAR = lambda: getVal()
for a in range(0,10):
print TMP_VAR()
這工作,我得到:
13:06:41.799504
13:06:41.800129
13:06:41.800139
13:06:41.800145
13:06:41.800161
13:06:41.800167
13:06:41.800173
13:06:41.800179
13:06:41.800184
13:06:41.800190
如何過,TMP_VAR
是一個功能了。有沒有辦法讓這個工作以下面的方式?
print TMP_VAR
實際上,有一個可調用函數鏈接到一個變量。所以每當我把我的TMP_VAR
傳遞給另一個函數時,作爲一個參數,它總是重新計算並恰好保持一個新值(不管getVal()
函數在那一刻返回)。
看來好像沒有簡單的解決方案來解決這個問題。使用'TMP_VAR()'而不是'TMP_VAR'似乎是比實現基於類的方法更好的解決方案。 – symbolix