Python 3.x 在python中:我可以依靠random.seed()来生成始终相同的矩阵排列吗?

Python 3.x 在python中:我可以依靠random.seed()来生成始终相同的矩阵排列吗?,python-3.x,numpy,permutation,shuffle,random-seed,Python 3.x,Numpy,Permutation,Shuffle,Random Seed,在python中,我想随时排列各种2x2 numpy.array()的行。如果a在每次排列之前将random.seed()固定为某个整数,我可以依靠seed来确保排列始终相同吗?我能找到一些解释,让我相信这种方法是可靠的吗?用随机。seed固定种子的目的就是在将种子重置为已知值后,能够始终如一地产生相同的伪随机数。所以,是的,如果你的排列依赖于(伪)随机状态,那么将种子设置为一个已知常数将使算法每次生成相同的排列序列 来自(这是最有说服力的): 使用相同参数对RandomState方法的固定种子

在python中,我想随时排列各种2x2 numpy.array()的行。如果a在每次排列之前将random.seed()固定为某个整数,我可以依靠seed来确保排列始终相同吗?我能找到一些解释,让我相信这种方法是可靠的吗?

随机。seed固定种子的目的就是在将种子重置为已知值后,能够始终如一地产生相同的伪随机数。所以,是的,如果你的排列依赖于(伪)随机状态,那么将种子设置为一个已知常数将使算法每次生成相同的排列序列

来自(这是最有说服力的):

使用相同参数对
RandomState
方法的固定种子和固定系列调用将始终产生相同的结果,直至舍入错误

>>> import numpy as np
>>> np.random.seed(5)
>>> np.random.rand()
0.22199317108973948 # (1)
>>> np.random.rand()
0.8707323061773764 # (2)
>>> np.random.seed(5)  # re-seed
>>> np.random.rand()
0.22199317108973948 # same as (1)
>>> np.random.seed(5)
>>> np.random.rand()
0.22199317108973948 # same as (1) again
>>> np.random.rand()
0.8707323061773764 # same as (2)