使用Pygal模拟掷骰子
2020-07-14 06:11
79 查看
Pygal的官方网站:http://www.pygal.org/
官方网站
掷一个骰子
import pygal from random import randint class Die(): '''表示一个骰子的类''' def __init__(self,num_sides=6): '''骰子默认6面''' self.num_sides = num_sides def roll(self): '''返回一个随机值,范围1~num_sides''' return randint(1,self.num_sides) #分析抛掷一个骰子的结果 die = Die() results = [] for i in range(1000): result = die.roll() results.append(result) #分析结果 fres = [] for value in range(1,die.num_sides+1): fre = results.count(value) fres.append(fre) #对结果进行可视化 hist = pygal.Bar() hist.title = "Results of rolling one D6 1000 times" hist.x_labels = list('123456') hist.x_title = "Result" hist.y_title = "Frequency of Result" hist.add('D6',fres) hist.render_to_file('die_visual.svg') #查看图表 file:///F:/Spy_code/die_visual.svg
抛掷两个骰子
#创建两个D6骰子 die_1 = Die() die_2 = Die() #抛掷多次将结果存到列表中 results = [] for roll_num in range(1000): res = die_1.roll() + die_2.roll() results.append(res) #分析结果 fres = [] max_result = die_1.num_sides + die_2.num_sides for value in range(1,max_result+1): fre = results.count(value) fres.append(fre) #可视化结果 hist = pygal.Bar() hist.title = 'Resuls of rolling two D6 dice 1000 times' hist.x_labels = list('123456789')+['10','11','12'] hist.x_title = 'Result' hist.y_title = 'Frequency of Result' hist.add('D6',fres) hist.render_to_file('dice_visual.svg') #查看图片file:///F:/Spy_code/dice_visual.svg
抛掷两个不同面的骰子
#创建一个6面骰子和一个10面骰子 die_1 = Die() die_2 = Die(10) #抛掷多次将结果存到列表中 results = [] for roll_num in range(50000): res = die_1.roll() + die_2.roll() results.append(res) #分析结果 fres = [] max_result = die_1.num_sides + die_2.num_sides for value in range(2,max_result+1): fre = results.count(value) fres.append(fre) #可视化结果 hist = pygal.Bar() hist.title = 'Resuls of rolling a D6 and D10 50000 times' hist.x_labels = list('23456789')+['10','11','12','13','14','15','16'] hist.x_title = 'Result' hist.y_title = 'Frequency of Result' hist.add('D6+D10',fres) hist.render_to_file('diceD10D6_visual.svg')
for index,val in enumerate(([1,2,3],'a')): #返回一个可迭代对象的索引以及值 print(index,val)
相关文章推荐
- Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
- python可视化——使用pygal模拟掷骰子
- Pycharm中安装Pygal并使用Pygal模拟掷骰子
- Python 使用matplotlib模块模拟掷骰子
- 【Python-3.5】Pygal模拟骰子点数,分析结果可视化
- pygal--模拟投骰子
- 使用pygal通过可视化模拟了随机漫步的情况,但生成的树图是什么鬼?
- Python绘制直方图 Pygal模拟掷骰子
- Python自学之使用pygal掷骰子
- Python小例子——使用科学计算库NumPy模拟掷骰子
- 使用pygal进行掷骰子数据分析
- vue项目中使用mockjs模拟接口返回数据
- IOS 使用Http模拟SOAP请求Webservice时内容Unicode编码的实现
- mysql delete错误使用where条件的操作恢复(模拟oracle闪回)
- c# 使用 HttpWebRequest模拟登陆(附带验证码)
- 使用HTML页面和一般处理程序模拟ASP.NET WebForms中的事件
- 使用gulp搭建本地服务器并实现模拟ajax
- 波形峰值查找的简单模拟 (使用WinAPI)
- Simsci.ProII V8.2工艺流程模拟软件 使用教程手册资料Manual\
- js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题