我的问题可能会有所不同。这是我的代码
from random import randint
print(randint(0,9))
现在我想知道如果运行此代码它将生成哪个数字。它背后的算法是什么。这是我可以改变它的方式。
如果这不起作用,请让我问一些不同的东西
from random import randint
for i in range(10):
print(randint(0,9))
让我们以此为例打印10个随机数示例列表[2,1,4,5,2,4,5,2,1,5]
如果我知道上面列表中的9号码是他们知道该号码的10号码的方法。
感谢stackoverflow。 非常感谢极客
答案 0 :(得分:3)
随机数生成器的要点是提供随机数。 理想情况下,没有,没有办法预测序列中给出9个数字的第10个数字是什么(因为,再次,那不是随机的!)
您可以做的是使用random.seed(some_value)
设置随机数生成器的种子。通过使用相同的种子,后续调用randint()生成的数字序列将是相同的(注意:相同,不可预测)。
答案 1 :(得分:0)
我一直看到对此类问题的回答说无法预测...假设真正的随机性(任何数字的机会均等)应该有一种方法来确定下一个数字的概率。例如,如果连续翻转了 5 次正面,则第 6 次可能仍然是正面,但在相同的机会下,反面翻转的可能性要大得多。
当然,这与真正的预测不同,但取决于先前的结果,如果它是真正(或接近于真正)随机的,则每个数字出现的机会均等,因此可以使用先前的结果来提供帮助预测接下来几轮结果的概率。