参考资料:https://www.runoob.com/python3/python3-func-number-seed.html
若侵删
描述
seed() 方法改变随机数生成器的种子,可以在调用其他随机模块函数之前调用此函数。
语法
以下是 seed() 方法的语法:
import random
random.seed ( [x] )
注意:seed()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。
参数
x – 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed(如果省略,则根据系统时间来生成下一个随机数,此时生成的随机数因时间差异而不同)
返回值
本函数没有返回值。
实例
以下展示了使用 seed(() 方法的实例:
import random
# 随机数不一样
random.seed()
print ("使用默认种子生成随机数:", random.random())
random.seed()
print ("使用默认种子生成随机数:", random.random())
# 随机数一样
random.seed(1)
print ("使用整数种子生成随机数:", random.random())
random.seed(1)
print ("使用整数种子生成随机数:", random.random())
random.seed(2)
print ("使用整数种子生成随机数:", random.random())
random.seed("hello",2)
print ("使用字符串种子生成随机数:", random.random())
以上实例运行后输出结果为:
使用默认种子生成随机数: 0.5374107472690997
使用默认种子生成随机数: 0.8840977421960441
使用整数种子(1)生成随机数: 0.13436424411240122
使用整数种子(1)生成随机数: 0.13436424411240122
使用整数种子(2)生成随机数: 0.9560342718892494
使用字符串种子生成随机数: 0.3537754404730722
总结
可以看到当seed()没有参数时,每次生成的随机数不同,而当我们设置相同的seed时,每次生成的随机数相同。
也就是说,要想获得与上次相同的随机数,seed后的数字应该相同!