Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python NumPy random.shuffle函数_Python_Random_Numpy_Shuffle - Fatal编程技术网

Python NumPy random.shuffle函数

Python NumPy random.shuffle函数,python,random,numpy,shuffle,Python,Random,Numpy,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进行的。实际上,无论我是哪个变量,其他两个变量都会随之改变。我认为当我使用slice copy时,原始变量应该是独立的。我错过什么了吗?如何保护原始变量不被更改?使用c=a.copy()可以帮助您

我在使用
numpy.random.shuffle
函数时遇到了一些奇怪的情况

from numpy import arange
from numpy.random import shuffle

a = arange(5)
b = a
c = a[:]

shuffle(c)
a
b
所有的更改都是通过
c
进行的。实际上,无论我是哪个变量,其他两个变量都会随之改变。我认为当我使用slice copy时,原始变量应该是独立的。我错过什么了吗?如何保护原始变量不被更改?

使用
c=a.copy()
可以帮助您。

根据:

通过基本切片生成的所有阵列始终是原始阵列的视图


使用或获取副本。

使用切片可为普通列表创建副本,但不一定为所有类型创建副本。您必须阅读任何类型对象的文档,以查看切片是否生成副本。