import random,time
n=eval(input("请问你想实验几次呀:"))
count=0
start=time.perf_counter()
for i in range(n):
# 列表推导式:随机抽取从(1,366)抽取23次,组成列表
bds = [random.randint(1,366) for x in range(23)]
# 利用集合的无重复性来判断是否有人生日一致
if len(bds) != len(set(bds)):
count += 1
end=time.perf_counter()
timecost=round(end-start,2)
print("试验{}次后得到的概率是{}耗时是{}秒".format(n, round(count/n, 2),timecost))
本代码能根据输入过的任意实验次数,获得的概率,可以看出稳定在0.5附近