在 python 中制作随机种子时出现问题

Problem with making random seed work in python

我在矩阵中的选定位置生成随机条目,我希望在代码的不同 运行 上看到相同的条目。所以我做了以下操作,但我不确定在每个 运行?

上获得不同的条目我做错了什么
import numpy as np
import random
random.seed(10)

N = 5
G = [[0 for i in np.arange(N)] for j in np.arange(N)]
for i in np.arange(N):
    for j in np.arange(N):
        if i==j:
            G[i][j] = 0
        else:
            if abs(i-j) <= 2:
                random.seed(10)
                G[i][j] = round(np.random.uniform(0,1),2)
            else:
                G[i][j] = 0

print(G)

你可以替换

random.seed(10)

来自

np.random.seed(10)

有一个固定的随机状态。由于您使用 NumPy 的 random 模块生成随机数,因此您应该使用 np.random.seed() 来修复随机状态。我是这么理解的。