np.random.seed()
np.random.seed(n)函数用于生成指定随机数。若要每次都保持相同的随机数,则每次调用随机函数生成之前都要调用该函数!
案例1
由 np.random.rand() 生成的随机数
print(np.random.rand(3)) print(np.random.rand(3)) print(np.random.rand(3)) np.random.seed(seed=56) print(np.random.rand(3)) np.random.seed(seed=56) print(np.random.rand(3)) np.random.seed(seed=56) print(np.random.rand(3))
输出为:
[0.88088538 0.7363577 0.71264004] [0.03567197 0.01973123 0.32779687] [0.56301663 0.74571705 0.72956789] [0.98419185 0.33341227 0.67370162] [0.98419185 0.33341227 0.67370162] [0.98419185 0.33341227 0.67370162]
案例2
由 np.random.randint() 生成的随机数
print(np.random.randint(100, size=(5, 5))) print(np.random.randint(100, size=(5, 5))) print(np.random.randint(100, size=(5, 5))) np.random.seed(seed=56) print(np.random.randint(100, size=(5, 5))) np.random.seed(seed=56) print(np.random.randint(100, size=(5, 5))) np.random.seed(seed=56) print(np.random.randint(100, size=(5, 5)))
输出为:
[[ 5 61 10 35 39] [84 1 2 34 65] [58 83 78 55 45] [39 95 0 38 68] [66 44 4 45 1]] [[67 65 5 54 86] [27 38 81 36 90] [95 6 44 14 61] [99 76 45 40 61] [61 46 55 19 54]] [[95 26 22 11 41] [84 13 83 29 13] [13 55 33 82 7] [91 98 32 79 79] [19 16 26 25 1]] [[85 15 64 34 14] [87 22 57 90 55] [24 12 66 43 11] [80 33 89 10 31] [28 37 34 15 28]] [[85 15 64 34 14] [87 22 57 90 55] [24 12 66 43 11] [80 33 89 10 31] [28 37 34 15 28]] [[85 15 64 34 14] [87 22 57 90 55] [24 12 66 43 11] [80 33 89 10 31] [28 37 34 15 28]]
可以看出不管是np.random.rand()函数,还是np.random.randint()函数, 没有调用 np.random.seed(seed=56) 函数生成的随机数组每次的结果都是不一样的,而调用了np.random.seed(seed=56) 函数生成的随机数组每次都是一样的结果。
原创文章,作者:朋远方,如若转载,请注明出处:https://caovan.com/01-yongyushujukexuede-python-jichuzhishi/.html