还是在上次提到的数据之魅那本书,看到模拟这章,有个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的附近。

原文:http://www.cnblogs.com/buzhizhitong/p/5883676.html

python编写模拟硬币投掷_python实现简单随机模拟——抛呀抛硬币相关推荐

  1. python模拟抛硬币_python实现简单随机模拟——抛呀抛硬币

    还是在上次提到的数据之魅那本书,看到模拟这章,有个python模拟脚本,但书上不全,就自己简单写了下. 流程:在不同的平衡参数p(为0.5时为均匀的)下,模拟60次实验,每次投硬币8次,统计正面朝上的 ...

  2. python淘宝cookies抢购_python实现简单爬虫模拟登录淘宝(cookie简介)

    试验了一个晚上,python的小爬虫还是挺可爱的,简单几行就可以抓取网页了.如果你和我一样是新手,你可以先去http://blog.csdn.net/column/details/why-bug.ht ...

  3. python实现图片加滤镜_Python 实现简单滤镜

    在这个人人自拍的年代,每个人的智能手机中至少都装了一款美颜相机或者美图软件,而这些软件实现美图功能又主要是靠滤镜来实现的.而这个项目使用 Python 编写一个简单的滤镜程序. 效果截图 先来展示一下 ...

  4. python编程超市购物系统_python实现简单购物车系统(练习)

    #!Anaconda/anaconda/python#coding: utf-8 #列表练习,实现简单购物车系统 product_lists= [('iphone',5000), ('computer ...

  5. python编写猜大小游戏_python编写猜数字小游戏

    本文实例为大家分享了python编写猜数字小游戏的具体代码,供大家参考,具体内容如下 import random secret = random.randint(1,30) guess = 0 tri ...

  6. python编写掷骰子程序_Python Tkinter实例——模拟掷骰子

    什么是tkinter? tkinter 是 python 的标准 gui 库.python 使用 tkinter 可以快速的创建 gui 应用程序. 由于 tkinter 是内置到 python 的安 ...

  7. python模拟购物模块_python实现简单购物商城

    本文为大家分享了购物商城小程序,供大家参考,具体内容如下 软件版本:python3.x 功能:实现简单购物商城 1.允许用户选择购买多少件 2.允许多用户登录,下一次登录后,继续按上次的余额继续购买 ...

  8. python编写代码购买飞机票_Python 模拟航空公司售票程序

    应用场景:有一个航空公司某一航班要进行机票销售,一个航班的机票库存是有限的,很多渠道都在同时销售机票,怎么保证不重复销售. 实现方式:模拟机票库存 创建python文件 TicketDB.py imp ...

  9. python编写程序输出诗句_Python文本处理简介:44行代码编写一个简单的隐藏诗生成器,python,入门,藏头诗...

    想必最近大家家庭群里最近都会看到这么一张图: 一惊,这什么玩意儿???后来一搜会发现里面不同的诗句来自于不同的古诗,嘛,这不是很好玩的一件事情吗?这次我们使用Github的唐诗宋词dataset:ht ...

  10. python能做哪些客户端_Python 实现简单的客户端认证

    问题 你想在分布式系统中实现一个简单的客户端连接认证功能,又不想像SSL那样的复杂. 解决方案 可以利用 hmac 模块实现一个连接握手,从而实现一个简单而高效的认证过程.下面是代码示例: impor ...

最新文章

  1. 皮一皮:论北方有多冷...
  2. 登录时本地保存账号密码及关闭ARC的方法
  3. 对于早期Servlet内核你清楚吗,这些基础的东西,不能忘哦
  4. java字符串数字统计_对字符串进行简单的字符数字统计 探索java中的List功能
  5. 使用web.xml方式加载Spring时,获取Spring context的两种方式
  6. Java项目文件目录结构介绍
  7. 单片微机计算机原理与接口技术高峰,单片微机原理与接口技术
  8. python饼状图显示其比例_Python学习笔记--使用matplotlib绘制饼状图
  9. Google已将 xxx 标记为恶意程序并阻止安装的解决办法
  10. 技术分享 | 如何实现小程序与 App 的跳转
  11. BZOJ2959长跑——LCT+并查集(LCT动态维护边双连通分量)
  12. 动作捕捉,系数转换,IK 等整理总结
  13. 解决Thinkpad E450 外接显示器后没有声音的问题
  14. 我是如何锻炼写作的?我的知乎“撕逼”式写作。
  15. inux中,如何把一个目录及其子目录中的读写权限交给一个普通用户!
  16. ASP对接国际验证码接口DEMO示例
  17. 云计算与大数据课程学习笔记
  18. 广州职称入户有哪些职称_最奇怪的职称也可能是最受欢迎的
  19. 指标 | 指标波动归因
  20. 自定义UI 自制表盘

热门文章

  1. bootstrap3中使用bootstrap-datetimepicker日期插件的用法
  2. 使用js jquery去搭建完成京东购物车
  3. zabbix报警 Lack of free swap space on zabbix
  4. 51NOD 1072 Wythoff Game
  5. mysql 查询最多的_mysql查询——查找订单最多的客户
  6. 云服务优缺点_云服务是什么,它有哪些优缺点?
  7. 利用akshare读取50EFF期权1
  8. Mac 连接显示器,外接显示器不出影像
  9. mentohust联网报错“系统提示:用户使用了不允许的接入方式!(有线网络请选择“有线1x上网”服务)”
  10. 原研哉:设计是什么?