我已将grid1和grid2转换为数组,并使用以下函数迭代表,并在grid1和grid2值匹配时返回相应的值表格表。但不知何故,最终输出只包含4个不正确的整数值。有什么建议可能在这里错了吗?
def grid(grid1,grid2):
table = {(10,1):61,(10,2):75,(10,3):83,(10,4):87,
(11,1):54,(11,2):70,(11,3):80,(11,4):85,
(12,1):61,(12,2):75,(12,3):83,(12,4):87,
(13,1):77,(13,2):85,(13,3):90,(13,4):92,}
grid3 = np.zeros(grid1.shape, dtype = np.int)
for k,v in table.iteritems():
grid3[[grid1 == k[0]] and [grid2 == k[1]]] = v
return grid3
答案 0 :(得分:0)
我认为发生的事情是变量“k”和“v”的赋值没有使用“deepcopy”完成。这意味着赋值只是变量而不是它们的值。例如,当“k”的值在后续迭代中发生变化时,所有先前的“gridx”赋值现在都反映了“k”的新/当前状态。