глобальный массив значений изменяется внутри функции без глобальной ссылки на нее - PullRequest
0 голосов
/ 19 февраля 2019

Почему я могу изменить глобальный массив 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]]]

Это противоречит тому, что другой поток здесь говорит.

...