同时投掷两个不同面的骰子
12.4.5 同时投掷两个不同面的骰子
假设我们同时投掷一个6面骰子和8面骰子,掷5000次,那结果如何呢?如图12-28所示。Jupyter Notebook (Anaconda)
# 导入随机整数
from random import randint
# 导入数据图库
import pygal
# 定义Die类
class Die:def __init__(self, num_sides=6):#骰子默认为六个面,也可以自定义面数self.num_sides = num_sidesdef roll(self):#返回一个1到骰子之间的随机值来模拟人投掷骰子的结果值return randint(1, self.num_sides)
#默认6个面,输入参数8个面
die_1 = Die();die_2 = Die(8)
定义空列表,保存两个骰子的值
res_s = []
#投掷次数
for roll_num in range(5000):#调用函数roll,产生随机数res = die_1.roll() + die_2.roll()#将每次的骰子数值追加进列表末尾res_s.append(res)
#定义空列表,保存两个骰子总点数的个数
fre_s = []
#得到总点数
max_res = die_1.num_sides + die_2.num_sides
#因为最小值为2,所以随机函数从2开始赋给value值
for value in range(2,max_res + 1):#计数器fre = res_s.count(value)#添加出现的个数到列表末尾fre_s.append(fre)
#初始化一个柱状图
bar = pygal.Bar()
#设置标题
bar.title = "Figure of Die(程悦)"
#设置x的值
bar.x_labels = ['2','3','4','5','6','7','8','9','10','11','12','13','14']
#x轴的标题
bar.x_title = "Res(Total points value set)"
#y轴的标题
bar.y_title = "Fre(The result of frequencies)"
#添加y轴参数
bar.add('D6:D8',fre_s)
#保存文件
bar.render_to_file('Die_figure_two_dif_sides.svg')
Jupyter Notebook (Anaconda)中输入以下代码可以找到生成的文件位置
同时投掷两个不同面的骰子相关推荐
- 数据可视化——投掷两个6面的骰子
from die_1 import Die import pygal# 创建2一个D6 die_1 = Die() die_2 = Die()# 扔几次骰子,并将结果存储在一个列表中,扔1000次 r ...
- 6个面的骰子 标上1 2 3 4 5 6 投掷8次 求出现和的概率最大的数 ,就是这8次的和最有可能是多少...
1.个面的骰子 标上1 2 3 4 5 6 投掷8次 求出现和的概率最大的数 ,就是这8次的和最有可能是多少 应该是28. (1+2+3+4+5+6)/6=3.5 3.5 * 8 =28 另一种方法是 ...
- python掷两个骰子的和_python之pygal:掷两个不同的骰子并统计大小出现次数
代码示例: # 掷两个不同的骰子并统计大小出现次数 import pygal from die_class import Die die = Die(6) # 实例化一个六面的骰子对象 die_10 ...
- 一个sql语句,根据相同id字段删除两个表里面的数据,
表1 表2 表1:是失物招领信息表 表2:存放照片的表 根据form表的id,要删除已经找到失物的信息, 并且还要删除pic表中的图片的数据. (提示;pid的ID 和 form ...
- 《速通深度学习数学基础》
目录 序 前言 第1章 线性代数的基本概念 1.1 向量和深度学习 1.2 向量距离计算 1.3 向量的基本性质 1.4 矩阵的基本概念 1.5 一些特殊的矩阵 第2章 线性代数在深度学习中的应用 2 ...
- 论war3中的随机数系统
转帖来源:http://war3.replays.net/bbs/htm_data/2/0609/866031.html ※论war3中的随机数系统※(重新编写版) 英文版在MYM主页放出感谢ryan ...
- python实现大富翁_Python3 欧拉计划 问题84 大富翁
EulerProject.png 更多问题参见:https://www.jianshu.com/p/8c3ec805433d 84.大富翁 大富翁的标准棋盘大致如下图所示: Monopoly.png ...
- Python入门笔记(三)
文章目录 第十二章 异常处理 12.1 常见异常 12.2 处理异常:try-- except 12.3 创建异常类型:raise语句 12.4 断言:assert 12.5 存储数据:json.du ...
- R语言学习手记 (1)
R语言学习手记 (1) 经管的会计和财管都会学数据统计与分析R语言这门课,加上我也有点兴趣,就提前选了这门课,以下的笔记由老师上课的PPT.<R语言编程艺术>和<R语言数据科学> ...
最新文章
- mybatis结合log4j打印SQL日志
- skype安卓手机版_危险的战争游戏安卓手机版下载-危险的战争下载v1.0.13
- 【DIY】最简单粗暴便宜的DIY定时器方法,没有之一
- 【Python】【应用 01】使用python初步处理文件数据就那么简单!(本文以处理excel和目录为例)
- react native的学习
- Java Error(一)
- 处理数据包的开源项目FD.IO
- 如何生成自己的Yaas Service yaas
- python api 示例_Python简单接口测试实例
- 恕我直言,你的模型可能并没看懂 prompt 在说啥
- python必备入门代码-初学必备:1分钟带你认识Python的代码(上)
- 信息架构:看不到不代表不存在
- 打造高效的运维日志收集与分析平台
- ubuntu终端命令停止_解决Linux关闭终端(关闭SSH等)后运行的程序或者服务自动停止【后台运行程序】...
- [小说连载]张小庆,在路上(2)- 兰博和威震天
- Tomcat服务器下载、安装、配置环境变量教程(超详细)
- 使用PopWindow时距离边界有间隙的解决办法
- 微信抢红包微信 PHP代码实现
- 2019python二级真题_2019年3月二级python真题,上岸必备!
- iOS_CLLocation定位
热门文章
- 电脑游戏测试cpugpu软件,【七彩虹GTX760评测】七彩虹iGame760烈焰战神规格介绍-中关村在线...
- Scylla3.0.4在CentOS7.4上的安装
- 怎么将计算机设置为光盘引导模式,通过bios设置从光盘/光驱启动的方法
- 2018-7-5,Python练习
- 基于f2从零实现移动端可视化编辑器
- MyBatis系列之--Java 项目(非SpringBoot)集成MyBatis
- 大一c语言挂科分数烟台大学,知乎烟大 | 在烟大挂科是一种什么体验
- 基于STM32设计的云端健康管理系统(采用阿里云物联网平台)
- 格密码与最短向量上界
- #ACCV2022还有两周截稿#疫情过后期待相聚澳门,相邀参与亚洲视觉盛会