我正在运行一个程序就像其中一个游戏人们试图猜测0到100之间的数字,其中有100个人在猜测.我然后平均了多少不同的猜测.
import random
def averager(times):
tests=[]
for i in range(times):
l=[]
for i in range(0,100):
l.append(random.randint(0,100))
tests.append(len(set(l)))
return (sum(tests))/len(tests)
print(averager(1000))
出于某种原因,不同猜测的数量平均为63.6
这是为什么?是由于python随机库中的缺陷?
在人们猜测1到10之间的数字的情况下
第一个人有100%的几率猜测以前未被证实的数字
第二个人有90%的机会猜测以前未被提及的号码
第三个人有80%的几率猜测以前未被证实的数字
等等…
猜测一个新数字(通过我的推理)的平均机会是55%.
但数据并未反映出这一点.
最佳答案 您的代码用于查找由100人组成的独特猜测的平均数量,每个人猜测1到100之间的数字.
至于它为什么会收敛到63左右的数字…你应该把你的问题发布到数学堆栈交换.