这是“取消”随机数生成器的唯一方法:
代码语言:javascript复制np.random.seed(int(time.time()))如果在循环中有一些您想要重复的代码(例如测试),而另一些代码则希望每个循环都是随机的,那么在设置它之后,如何将种子“重置”为随机数生成器?
以下代码说明了这一问题:
代码语言:javascript复制import numpy as np
def test():
np.random.seed(2)
print("Repeatable test:", [np.random.randint(10) for i in range(3)])
for i in range(4):
print("Random number:", np.random.randint(10))
test()
Random number: 8
Repeatable test: [8, 8, 6]
Random number: 2
Repeatable test: [8, 8, 6]
Random number: 2
Repeatable test: [8, 8, 6]
Random number: 2
Repeatable test: [8, 8, 6]期望的结果:我希望随机数是随机的每一个循环。
如果这是唯一的方法,我很乐意导入时间模块,但我认为可能有一种更简单、更健壮的方法。
(根据这个职位,您无法获得当前的种子)