15-6 自动生成标签:请修改 die.py 和 dice_visual.py,将用来设置 hist.x_labels 值的列表替换为一个自动生成这种列表的循环。如果你熟悉列表解析,可尝试将die_visual.py 和 dice_visual.py 中的其他 for 循环也替换为列表解析。
from die import Die
import pygal
#创建两个点数不同的骰子
die_1=Die()
die_2=Die(10)
#投掷多次并将结果记录在列表中
results=[]
for roll_num in range(50000):
result=die_1.roll() + die_2.roll()
results.append(result)
#统计频率
frequencies=[]
max_result=die_1.num_sides + die_2.num_sides
for value in range(2,max_result+1):
frequency=results.count(value)
frequencies.append(frequency)
#可视化结果
hist=pygal.Bar()
hist.title = "Results of rolling a D6 and a D10 50,000 times."
#将x轴列表变为循环生成的列表
xs=[]
for value in range(2,max_result+1):
xs.append(value)
hist.x_labels=xs
hist.x_title = "Result"
hist.y_title = "Frequency of Result"
hist.add('D6 + D10', frequencies)
hist.render_to_file('different_dice_visual.svg')