大家肯定都摇过 🎲,我们知道一个骰子有六个面,分别对应 1-6 六个数字,这六个数字出现的概率是一样的,都是六分之一(0.166666...)。

接下来我们使用 random.choice() 函数模拟摇骰子的过程,统计每个数字出现的次数,并按照 数字 x 出现的频率为 xxx 的格式,打印出每个数字出现的频率。

# 导入 random 模块
import random

counts = {'1': 0, '2': 0, '3': 0, '4': 0, '5': 0, '6': 0}
# 取出 counts 中所有键,并转换成列表类型
nums = list(counts.keys())
# 摇骰子次数
times = 5000
# 次数越多,每个数字出现的频率越接近于它的概率
# 你可以改成更大的数字试试,但耗时会更长

# 模拟摇骰子的过程并计数
for i in range(times):
  num = random.choice(nums)
  counts[num] = counts[num] + 1
# 打印每个数字出现的频率
for num, count in counts.items():
  print('数字{}出现的频率为{}'.format(num,count/times))
  

打印结果:

数字1出现的频率为0.1758
数字2出现的频率为0.167
数字3出现的频率为0.1656
数字4出现的频率为0.1652
数字5出现的频率为0.1618
数字6出现的频率为0.1646

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐