я столкнулся с чем-то странное с numpy.random.shuffle
функциейNumPy функция random.shuffle
from numpy import arange
from numpy.random import shuffle
a = arange(5)
b = a
c = a[:]
shuffle(c)
a
и b
все изменения с c
. На самом деле, независимо от того, какая переменная, две другие, меняются вместе с ней. Я подумал, что когда я использую копию фрагмента, исходная переменная должна быть независимой. Я что-то пропустил? Как защитить исходную переменную от изменения?
Использование кусочка делает копию для обычных списков, но не обязательно для всех типов. Вы должны прочитать документацию для любого объекта, который будет использоваться, чтобы увидеть, делает ли нарезка копией или нет. – BrenBarn