大家肯定都摇过 ,我们知道一个骰子有六个面,分别对应 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