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