python模拟抛硬币_python实现简单随机模拟——抛呀抛硬币
还是在上次提到的数据之魅那本书,看到模拟这章,有个python模拟脚本,但书上不全,就自己简单写了下。
流程:在不同的平衡参数p(为0.5时为均匀的)下,模拟60次实验,每次投硬币8次,统计正面朝上的次数,并作图。
import random
import matplotlib.pyplot as plt
repeats, tosses = 60, 8
# p为平衡参数,tosses为每次重复试验中投掷硬币的次数
# 返回当前平衡参数p的情况下,8次实验中正面的次数
def heads(tosses, p):
h = 0
for x in range(0, tosses):
if random.random() < p:
h += 1
return h
x = [] # 存放平衡参数p
y = [] # 存放每个p下,60次重复试验得到的h的值
p = 0 # 初始化p,从0开始
while p < 1.01:
hh = []
for t in range(0, repeats):
h = heads(tosses,p)
# 添加微小抖动值,防止点的重叠
h += (random.random()/4)*random.choice([-1,1])
hh.append(h)
#print(p,'\t',heads(tosses,p))
y.append(hh)
x.append(p)
p += 0.05
# 箭头标注p=0.5,即硬币平衡的点
plt.plot(x,y,'g^')
plt.annotate('balence', xy=(0.5, 5), xytext=(0.15, 8),
arrowprops=dict(facecolor='black', shrink=0.05),
)
plt.show()
'''
# 一次有意思的尝试...
# 开始没做出理想的图,以为一个x,对应多个y没法画(其实就是忘记点的抖动)...
# 这里循环plot也是可以实现的.
for i in range(60):
q = []
for n in range(len(y)):
yn = y[n][i]
q.append(yn)
plt.plot(x,q,'ro')
'''
输出图形如下:
可以看到,在p=0.5,即硬币均匀的情况下,投掷后,硬币正面出现次数大部分在4的附近。
python模拟抛硬币_python实现简单随机模拟——抛呀抛硬币相关推荐
- python淘宝cookies抢购_python实现简单爬虫模拟登录淘宝(cookie简介)
试验了一个晚上,python的小爬虫还是挺可爱的,简单几行就可以抓取网页了.如果你和我一样是新手,你可以先去http://blog.csdn.net/column/details/why-bug.ht ...
- python模拟购物模块_python实现简单购物商城
本文为大家分享了购物商城小程序,供大家参考,具体内容如下 软件版本:python3.x 功能:实现简单购物商城 1.允许用户选择购买多少件 2.允许多用户登录,下一次登录后,继续按上次的余额继续购买 ...
- python数据可视化代码_Python实现简单的数据可视化
现在python这门解释型语言被越来越多的人们喜欢,强大的库支持,使得编程过程变得简单. 我是一个传统的C语言支持者,往后也打算慢慢的了解Python的强大. 今天我就学习一下使用python实现数据 ...
- python坦克大战游戏_python实现简单坦克大战
基于对面向对象编程的思想完成简单的坦克大战游戏.主要目的锻炼面相对象编程思想 同样的在使用python进行游戏编写时需要安装pygame模块 安装方法: pycharm安装方式:File --> ...
- python简易发红包_python+redis简单实现发红包程序
redis是什么? Redis 是一个高性能的key-value数据库! 想进一步了解请移步搜索引擎自行查找. 编写这个小程序的目的就是对redis进行一个简单的小操作,对redis有一个初步的了解, ...
- python树的实现_Python实现简单字典树的方法
本文实例讲述了Python实现简单字典树的方法.分享给大家供大家参考,具体如下: #coding=utf8 """代码实现了最简单的字典树,只支持由小写字母组成的字符串. ...
- python搭建web服务器_Python搭建简单的web服务器
Python搭建简单的web服务器 1.win+R输入cmd打开命令行 2.通过 cd 进入到你保存 HTML 文件的目录.例如:H:\D3\d3 输入 cd\ 指令进入到C盘的根目录.(CD(更改目 ...
- python银行系统模拟演练_python多线程实现代码(模拟银行服务操作流程)
1.模拟银行服务完成程序代码 目前,在以银行营业大厅为代表的窗口行业中大量使用排队(叫号)系统,该系统完全模拟了人群排队全过程,通过取票进队.排队等待.叫号服务等功能,代替了人们站队的辛苦. 排队叫号 ...
- python编写爬虫代码_python编写简单爬虫资料汇总
爬虫真是一件有意思的事儿啊,之前写过爬虫,用的是urllib2.BeautifulSoup实现简单爬虫,scrapy也有实现过.最近想更好的学习爬虫,那么就尽可能的做记录吧.这篇博客就我今天的一个学习 ...
最新文章
- windows socket编程入门示例3
- 利用ashx和ajax实现表格的异步填充
- 制造业与计算机有关的岗位,天津人力资源:零批餐饮挺缺人 银行地产岗位少...
- 如何用 SpringBoot 实现并发登录人数控制(附代码)
- 快手公司厕所装计时器,网友:再也不能带薪拉屎了!
- 鸿蒙系统公测版发布,鸿蒙OS2.0系统公测版什么时候发布-适配机型
- 876. 链表的中间结点
- MPLS/×××网络解决MTU问题方法
- AspectJ——预编译方式实现AOP
- ibm服务器aix系统查看cpu,IBM AIX系统硬件信息查看命令(shell脚本)
- C语言经典问题(收藏)
- python显示实时时间校对_Python实现系统时间自动校正
- 软件工程实训有必要吗_软件工程实训总结
- 树莓派使用pigpio 控制舵机
- 人工智能架构图和产业链构成
- python修改快捷键_Pycharm快捷键设置 更换或者增添快捷键 设置字体放大缩小快捷键...
- 【转】AI芯片:寒武纪NPU设计分析(DianNao)
- 出版图书二维码,要如何制作呢?
- VLAN应用篇系列:(7)华为 H3C交换机VLAN聚合功能(实现不同VLAN,同一网段,二层隔离,三层互通)
- 关于爬取企业信息类的爬虫(一)
热门文章
- 如何绘制逻辑图 — 5. 要素的属性:系统与模块
- 需求与业务的区别、需求设计与业务设计的区别
- 【2017年第1期】ISO 8000(大)数据质量标准及应用
- 【2016年第3期】以大数据为核心 驱动智慧城市变革
- 【数据结构与算法】实验 编写双链表的结点查找和删除算法
- 【计算机网络】传输媒体与物理层概念辨析
- 统计范围内不含‘7‘的数字个数(洛谷P1590题题解,Java语言描述)
- 管理软件实施(1)——什么是管理软件
- 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET - ActiveXForm运行容器...
- 调查显示:被黑过的公司难以找到投资