or que o Python copia matrizes NumPy em que o comprimento das dimensões é o mesm

Tenho um problema ao referenciar uma matriz NumPy. Eu tenho uma matriz do formulário

import numpy as np
a = [np.array([0.0, 0.2, 0.4, 0.6, 0.8]),
     np.array([0.0, 0.2, 0.4, 0.6, 0.8]),
     np.array([0.0, 0.2, 0.4, 0.6, 0.8])]

Se eu criar agora uma nova variável,

b = np.array(a)

e faze

b[0] += 1
print(a)

entãoa não está mudando.

a = [array([0. , 0.2, 0.4, 0.6, 0.8]),
     array([0. , 0.2, 0.4, 0.6, 0.8]),
     array([0. , 0.2, 0.4, 0.6, 0.8])]

Mas se eu fizer a mesma coisa com:

a = [np.array([0.0, 0.2, 0.4, 0.6, 0.8]),
     np.array([0.0, 0.2, 0.4, 0.6, 0.8]),
     np.array([0.0, 0.2, 0.4, 0.6])]

so removi um número no final da última dimensão. Então eu faço isso de novo:

b = np.array(a)
b[0] += 1
print(a)

Agoraa está mudando, o que eu pensava ser o comportamento normal em Pytho

a = [array([1. , 1.2, 1.4, 1.6, 1.8]),
     array([0. , 0.2, 0.4, 0.6, 0.8]),
     array([0. , 0.2, 0.4, 0.6])]

Alguém pode me explicar isso?

questionAnswers(6)

yourAnswerToTheQuestion