【发布时间】:2011-03-04 19:35:22
【问题描述】:
我在 Python 2.6.5 中使用 Numpy 遇到了一个奇怪的问题。我分配了一个 numpy 数组,然后将一个新变量等同于它。当我对新数组执行任何操作时,原始值也会发生变化。这是为什么?请看下面的例子。请赐教,因为我对 Python 和一般编程都很陌生。
-苏扬
>>> import numpy as np
>>> a = np.array([[1,2],[3,4]])
>>> b = a
>>> b
array([[1, 2],
[3, 4]])
>>> c = a
>>> c
array([[1, 2],
[3, 4]])
>>> c[:,1] = c[:,1] + 5
>>> c
array([[1, 7],
[3, 9]])
>>> b
array([[1, 7],
[3, 9]])
>>> a
array([[1, 7],
[3, 9]])
【问题讨论】: