复制纽比阵列的神秘行为

2024-06-16 16:06:28 发布

您现在位置:Python中文网/ 问答频道 /正文

在处理数组的副本时,我注意到一些意外的行为。例如,我有一个NumPy数组(a):

import numpy as np
a = np.random.randint(9, size=(4,4))

输出:

^{pr2}$

然后,我复制这个数组(b)来操作副本并保持原始的完整性:

^{3}$

但是,原件和副本现在似乎都已更改:

b = array([[3, 4, 4, 3],
           [0, 0, 4, 0],
           [6, 3, 1, 6],
           [1, 5, 5, 5]])

a = array([[3, 4, 4, 3],
           [0, 0, 4, 0],
           [6, 3, 1, 6],
           [1, 5, 5, 5]])

我不明白为什么当操作只应用于副本时原始数组会被更改。这与我从Matlab或R中所期望的完全不同。有没有一种方法可以防止这种行为?在


Tags: importnumpysizeasnp副本random数组