重複の可能性:
変数の割り当てと変更 (Python で)
Python での変数の割り当てに、予期しない動作があることに気付きました。例えば:
import numpy as np
A = np.zeros([1, 3])
B = A
for ind in range(A.shape[1]):
A[:, ind] = ind
B[:, ind] = 2 * ind
print 'A = ', A
print 'B = ', B
出力
A = [[ 0. 2. 4.]]
B = [[ 0. 2. 4.]]
私が期待していた間:
A = [[ 0.1.2.]]
B = [[ 0. 2. 4.]]
「B = A」を「B = np.zeros([1, 3])」に置き換えると、正しいことがわかります。Ipython ターミナルで予期しない結果を再現できません。F5 キーを使用してコードを実行することで、SciTE 3.1.0 でその結果が得られました。Win7 で Python(x, y) 2.7.2.3 ディストリビューションを使用しています。