When I run the code below:
import numpy as np
v = np.array([1, 1, 1])
u_list = [v]
for i in range(2):
v += np.array([i, i, i])
u_list.append(v)
return u_list
Returns [array([2, 2, 2]), array([2, 2, 2]), array([2, 2, 2])]
But if I run the same code, with the 5th line as v = v + np.array([i, i, i]) it returns [array([1, 1, 1]), array([1, 1, 1]), array([2, 2, 2])]
Why is this?