Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我遇到了一些奇怪的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()是哪个变量,其他两个都会随之变化。我认为当我使用切片复制时,原始变量应该是独立的。我错过了什么?如何保护原始变量不被更改?
a
b
c
shuffle()
根据基本切片文档:
基本切片生成的所有数组始终是原始数组的视图。
使用ndarray.copy或numpy.copy获取副本。
使用c = a.copy()可以帮助你。
c = a.copy()