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)中输入以下代码可以找到生成的文件位置

同时投掷两个不同面的骰子相关推荐

  1. 数据可视化——投掷两个6面的骰子

    from die_1 import Die import pygal# 创建2一个D6 die_1 = Die() die_2 = Die()# 扔几次骰子,并将结果存储在一个列表中,扔1000次 r ...

  2. 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 另一种方法是 ...

  3. python掷两个骰子的和_python之pygal:掷两个不同的骰子并统计大小出现次数

    代码示例: # 掷两个不同的骰子并统计大小出现次数 import pygal from die_class import Die die = Die(6) # 实例化一个六面的骰子对象 die_10 ...

  4. 一个sql语句,根据相同id字段删除两个表里面的数据,

    表1 表2 表1:是失物招领信息表            表2:存放照片的表 根据form表的id,要删除已经找到失物的信息, 并且还要删除pic表中的图片的数据. (提示;pid的ID 和 form ...

  5. 《速通深度学习数学基础》

    目录 序 前言 第1章 线性代数的基本概念 1.1 向量和深度学习 1.2 向量距离计算 1.3 向量的基本性质 1.4 矩阵的基本概念 1.5 一些特殊的矩阵 第2章 线性代数在深度学习中的应用 2 ...

  6. 论war3中的随机数系统

    转帖来源:http://war3.replays.net/bbs/htm_data/2/0609/866031.html ※论war3中的随机数系统※(重新编写版) 英文版在MYM主页放出感谢ryan ...

  7. python实现大富翁_Python3 欧拉计划 问题84 大富翁

    EulerProject.png 更多问题参见:https://www.jianshu.com/p/8c3ec805433d 84.大富翁 大富翁的标准棋盘大致如下图所示: Monopoly.png ...

  8. Python入门笔记(三)

    文章目录 第十二章 异常处理 12.1 常见异常 12.2 处理异常:try-- except 12.3 创建异常类型:raise语句 12.4 断言:assert 12.5 存储数据:json.du ...

  9. R语言学习手记 (1)

    R语言学习手记 (1) 经管的会计和财管都会学数据统计与分析R语言这门课,加上我也有点兴趣,就提前选了这门课,以下的笔记由老师上课的PPT.<R语言编程艺术>和<R语言数据科学> ...

最新文章

  1. mybatis结合log4j打印SQL日志
  2. skype安卓手机版_危险的战争游戏安卓手机版下载-危险的战争下载v1.0.13
  3. 【DIY】最简单粗暴便宜的DIY定时器方法,没有之一
  4. 【Python】【应用 01】使用python初步处理文件数据就那么简单!(本文以处理excel和目录为例)
  5. react native的学习
  6. Java Error(一)
  7. 处理数据包的开源项目FD.IO
  8. 如何生成自己的Yaas Service yaas
  9. python api 示例_Python简单接口测试实例
  10. 恕我直言,你的模型可能并没看懂 prompt 在说啥
  11. python必备入门代码-初学必备:1分钟带你认识Python的代码(上)
  12. 信息架构:看不到不代表不存在
  13. 打造高效的运维日志收集与分析平台
  14. ubuntu终端命令停止_解决Linux关闭终端(关闭SSH等)后运行的程序或者服务自动停止【后台运行程序】...
  15. [小说连载]张小庆,在路上(2)- 兰博和威震天
  16. Tomcat服务器下载、安装、配置环境变量教程(超详细)
  17. 使用PopWindow时距离边界有间隙的解决办法
  18. 微信抢红包微信 PHP代码实现
  19. 2019python二级真题_2019年3月二级python真题,上岸必备!
  20. iOS_CLLocation定位

热门文章

  1. 电脑游戏测试cpugpu软件,【七彩虹GTX760评测】七彩虹iGame760烈焰战神规格介绍-中关村在线...
  2. Scylla3.0.4在CentOS7.4上的安装
  3. 怎么将计算机设置为光盘引导模式,通过bios设置从光盘/光驱启动的方法
  4. 2018-7-5,Python练习
  5. 基于f2从零实现移动端可视化编辑器
  6. MyBatis系列之--Java 项目(非SpringBoot)集成MyBatis
  7. 大一c语言挂科分数烟台大学,知乎烟大 | 在烟大挂科是一种什么体验
  8. 基于STM32设计的云端健康管理系统(采用阿里云物联网平台)
  9. 格密码与最短向量上界
  10. #ACCV2022还有两周截稿#疫情过后期待相聚澳门,相邀参与亚洲视觉盛会