我试图用另一个数组替换数组的一部分,如下所示:
data[1:-1,1:-1,1] = tmp_data
data[1:-1,1:-1,1]
和tmp_data
的大小相同。我收到此错误消息:
TypeError: 'tuple' object does not support item assignment
为什么会这样?我该如何解决?感谢
答案 0 :(得分:-1)
两个阵列的大小相同。 数据[1:-1,1:-1,1] = tmp_data将无法解决。 你需要提供将固定到赋值索引的tmp_data的大小。
>>> import numpy as np
>>> a = np.arange(20).reshape(2,2, 5)
>>> b = np.arange(21,41).reshape(2,2, 5)
>>> a[0:1,0:1,1]=b[0:1,0:1,1]
>>> a
array([[[ 0, 22, 2, 3, 4],
[ 5, 6, 7, 8, 9]],
[[10, 11, 12, 13, 14],
[15, 16, 17, 18, 19]]])