Python中 copy, deepcopy和np.random
2019-03-14 本文已影响0人
庵下桃花仙
copy, deepcopy
https://iaman.actor/blog/2016/04/17/copy-in-python
copy仅拷贝对象本身,而不对中的子对象进行拷贝,故对子对象进行修改也会随着修改。
deepcopy是真正意义上的复制,即从新开辟一片空间。我们经常说的复制实际上就是deepcopy.
具体看上面博客,写的很好!
np.random.shuffle(x)
https://blog.csdn.net/brucewong0516/article/details/79012233
np.random.shuffle(x)
现场修改序列,改变自身内容。(类似洗牌,打乱顺序)
#现场修改序列,改变自身内容。(类似洗牌,打乱顺序)
In [30]: arr = np.arange(10)
In [31]: np.random.shuffle(arr)
In [32]: arr
Out[32]: array([5, 2, 7, 0, 6, 3, 4, 1, 8, 9])
#对多维数组进行打乱排列时,默认是对第一个维度也就是列维度进行随机打乱
In [37]: arr = np.arange(12).reshape(3,4)
In [38]: arr
Out[38]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])
#将多维数组打乱
In [39]: np.random.shuffle(arr)
In [40]: arr
Out[40]:
array([[ 4, 5, 6, 7],
[ 0, 1, 2, 3],
[ 8, 9, 10, 11]])