3
我有一套{(i,j):NumPy.array}
的字典k
,我想循環使用NumPy.arrays進行某種評估。{元組:NumPy.array}循環字典
我做了dictionarries如下:
datarr = ['PowUse', 'PowHea', 'PowSol', 'Top']
for i in range(len(dat)): exec(datarr[i]+'={}')
,所以我可以通過量變到質變的字符串原始列表隨時更改組數據我想在更大的代碼集來評估。不過,這意味着我必須撥打我的字典eval(k) for k in datarr
。
結果,環路我想要做的是這樣的時刻:
for i in filarr:
for j in buiarr:
for l in datarrdif:
a = eval(l)[(i, j)]
a[abs(a)<.01] = float('NaN')
eval(l).update({(i, j):a})
,但有沒有寫這一個好得多的辦法嗎?我試着以下,但這並沒有工作:
[eval(l)[(i, j)][abs(eval(l)[(i, j)])<.01 for i in filarr for j in buiarr for k in datarrdiff] = float('NaN')`
THX提前
@eurniro:精湛,這確實就是我所需要的,無論是製作字典詞典的想法,還是使用np.putmask(...)! – 2011-05-09 08:19:47