我碰到了一些奇怪的事情与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
变化。其实不管我是shuffle()
哪个变量,其他两个都随它变化。我认为当我使用切片复制时,原始变量应该是独立的。我错过了什么?我如何保护原始变量不被更改?
使用切片为普通列表创建副本,但不一定适用于所有类型。您必须阅读任何类型的对象的文档以查看切片是否生成副本。 – BrenBarn