- numpy.random中的shuffle与permutation的区别
函数shuffle与permutation都是对原来的数组进行随机打乱原来元素顺序的操作。
区别在于shuffle直接在原来的数组上操作,会改变原来数组的顺序,无返回值;而permutation不在原来数组上操作,而是返回一个与原来数组一样但顺序被打乱了的数组,原来数组不会改变。
# 示例
import numpy as np
arr = np.arange(6)
print(arr)
np.random.shuffle(arr)
print(arr)
print()
arr = np.arange(6)
print(arr)
arr1 = np.random.permutation(arr)
print(arr)
print(arr1)
# 输出
[0 1 2 3 4 5]
[1 4 3 0 2 5]
[0 1 2 3 4 5]
[0 1 2 3 4 5]
[4 5 1 3 2 0]