【发布时间】:2020-03-15 01:48:42
【问题描述】:
我正在尝试为类编写一个代码,通过运行这个实验 10^6 次,然后计算两个或多个人在一组中生日相同的概率,然后计算两个或多个更多的人有相同的生日。我附上了下面的代码,但是当我尝试运行它时,绝对没有任何反应。它没有给出错误消息,它只是停止工作。有谁知道为什么?
-
import random
def calc_birthday_probability (num_people):
random.seed (2020) # Don't change this value
num_trials = 1000000
probability = 0
list1 = []
num_people = int(input())
repeats = 0
for i in range(0,num_trials+1):
for i in range (0,num_people+1):
list1.append(random.randint (1,3655))
for i in list1:
if list1.count(i)>1:
repeats +=1
i = i+1
i = i+1
prob = repeats//num_trials
probability = probability + prob
return probability
a = calc_birthday_probability(10)
print(a)
【问题讨论】:
-
你为什么不调试你的代码?
-
你的缩进是一团糟。您能否首先确保这是正确的。如果我复制您的代码,我会收到一条接一条的错误消息。
-
我认为您的意思是 365(一年中的天数),而不是 3655。
标签: python list random definition