为什么我可以在不使用显式全局引用的情况下从函数内部更改全局numpy数组?
import numpy as np
def test():
a[0,0,0] = 34
print(a)
a = np.zeros( (3, 2, 4), dtype=np.int)
test()
print(a)
print()都等于:
[[[34 0 0 0]
[ 0 0 0 0]]
[[ 0 0 0 0]
[ 0 0 0 0]]
[[ 0 0 0 0]
[ 0 0 0 0]]]
[[[34 0 0 0]
[ 0 0 0 0]]
[[ 0 0 0 0]
[ 0 0 0 0]]
[[ 0 0 0 0]
[ 0 0 0 0]]]
这与other thread这里所说的相矛盾。