在python中设计洗牌中,shuffle方法会直接在原来的数组上进行操作,改变原来数组的顺序,如果想要不直接在原来的数组上进行操作,就要使用permutation()方法,会返回一个新的打乱顺序的数组,并不改变原来的数组。本文介绍python中使用permutation()方法洗牌的原理及具体实例。
1、permutation()方法
随机排列一个序列,或者返回一个排列的范围。
如果x是一个多维数组,则只会沿着它的第一个索引进行随机排列。
2、语法格式
numpy.random.permutation(x)
3、参数
x : 整数或者数组
如果x是整数,则随机排列np.arange(x)。若果x是数组,对其复制之后再搅乱其元素。
4、返回值
返回一个新的打乱顺序的数组,并不改变原来的数组。
5、使用实例
print(rng.permutation(10))#随机排列0-9的数组 print(rng.permutation(np.arange(10)))#同上 #[7860219345] #[0572864391]
arr=np.arange(9).reshape((3,3)) print(arr) print(rng.permutation(arr))#只影响最外层的顺序 print(arr) #[[012] #[345] #[678]] #[[345] #[678] #[012]] #[[012] #[345] #[678]]
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)