使用Python计算玩彩票赢钱概率


Posted in Python onJune 26, 2019

工具:Jupyter notebook + Anaconda

游戏规则:时时彩一种玩法是买尾号。2元一个数字,中奖是20元。每个数字出现的概率相等。

目前想到两种买法:

  1. 随机购买,人是感性动物,很容易受周围环境干扰。完全随机购买在生活中是不存在的。
  2. 分析数字在前面N期出现的概率,选择概率最小的n个数字购买。

导入包

import numpy as np

定义玩法一:完全随机购买

def play_lottery(my_money,play_num,money):
'''
随机选择数的中奖率
result:结果字典
num:用于统计每个数字出现次数
my_money:我的余额
play_num:投注期数
money:投注额
flag: 1代表赢钱 0则相反 2表示不输不赢

'''
flag = 1
temp = my_money
result = {'0':0,
'1':1,
'2':2,
'3':3,
'4':4,
'5':5,
'6':6,
'7':7,
'8':8,
'9':9}
data = np.random.randint(0,10,(play_num,1))
num = np.zeros((10,1))
for i in data:
play = np.random.randint(0,10,(5,1))
if i in play:
temp = temp + money
else:
temp = temp - money
if result[str(i[0])] == i[0]:
num[i[0]] = num[i[0]] + 1
print('我的余额:',temp)
print('开奖结果统计:\n',num[0][0],num[1][0],num[2][0],num[3][0],num[4][0],num[5][0],num[6][0],num[7][0],num[8][0],num[9][0])
if temp < my_money:
flag = 0
elif temp == my_money:
flag = 2
return flag

赌博代码

i = 0
binary = np.zeros((3,1))
while i < 10000:
binary[play_lottery(1000,10,10)][0] += 1 
i = i + 1

使用Python计算玩彩票赢钱概率

可以看出输:赢:平=6037:1886:2077

定义玩法二:按照概率购买

第一次购买,假设玩家已经获取到前面N期开奖号的中奖规律,不不不,应该是前面N期的各个数字出现的次数。

方法如下:

def play_lottery2(my_money,play_num,money):
'''
随机选择数的中奖率
result:结果字典
num:用于统计每个数字出现次数
my_money:我的余额
play_num:投注期数
money:投注额
flag: 1代表赢钱 0则相反 2表示不输不赢
'''
flag = 1
temp = my_money
result = {'0':0,
'1':1,
'2':2,
'3':3,
'4':4,
'5':5,
'6':6,
'7':7,
'8':8,
'9':9}
data = np.random.randint(0,10,(play_num,1))
num = np.zeros((10,1))
num_first = np.random.randint(0,10,(10,1))
is_one = 1
for i in data:
if is_one == 1:
play = np.argsort(num_first,axis=0).reshape(-1,1)[0:5]
is_one = 0
play = np.argsort(num,axis=0).reshape(-1,1)[0:5]
if i in play:
temp = temp + money
else:
temp = temp - money
if result[str(i[0])] == i[0]:
num[i[0]] = num[i[0]] + 1
print('我的余额:',temp)
print('开奖结果统计:\n',num[0][0],num[1][0],num[2][0],num[3][0],num[4][0],num[5][0],num[6][0],num[7][0],num[8][0],num[9][0])
if temp < my_money:
flag = 0
elif temp == my_money:
flag = 2
return flag

赌博代码

i = 0
binary = np.zeros((3,1))
while i < 10000:
binary[play_lottery2(1000,10,10)][0] += 1 
i = i + 1

使用Python计算玩彩票赢钱概率

可以看出按照概率购买之后比值为:

输:赢:平=3733:3761:2506

相对之前完全随机购买

输:赢:平=6037:1886:2077

赢得几率提升了不少,甚至赢>输,说的我都想翘课买彩票了。

好了回到正题。珍爱生命,远离黄赌毒。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pygame学习笔记(1):矩形、圆型画图实例
Apr 15 Python
Python判断变量是否为Json格式的字符串示例
May 03 Python
Python实现的基于优先等级分配糖果问题算法示例
Apr 25 Python
python设置值及NaN值处理方法
Jul 03 Python
Python使用pyodbc访问数据库操作方法详解
Jul 05 Python
使用pip发布Python程序的方法步骤
Oct 11 Python
选择Python写网络爬虫的优势和理由
Jul 07 Python
python迭代器常见用法实例分析
Nov 22 Python
python+pygame实现坦克大战小游戏的示例代码(可以自定义子弹速度)
Aug 11 Python
Python利器openpyxl之操作excel表格
Apr 17 Python
Python3中PyQt5简单实现文件打开及保存
Jun 10 Python
PyCharm 配置SSH和SFTP连接远程服务器
May 11 Python
java中的控制结构(if,循环)详解
Jun 26 #Python
PyQt5实现QLineEdit添加clicked信号的方法
Jun 25 #Python
pyqt5 键盘监听按下enter 就登陆的实例
Jun 25 #Python
PyQt5响应回车事件的方法
Jun 25 #Python
PyQt5 QTableView设置某一列不可编辑的方法
Jun 25 #Python
用python做游戏的细节详解
Jun 25 #Python
Python二进制文件读取并转换为浮点数详解
Jun 25 #Python
You might like
对盗链说再见...
2006/10/09 PHP
PHP 设计模式之观察者模式介绍
2012/02/22 PHP
PHP远程调试之XDEBUG
2015/12/29 PHP
php+js实现点赞功能的示例详解
2020/08/07 PHP
javascript网页关键字高亮代码
2008/07/30 Javascript
Div自动滚动到末尾的代码
2008/10/26 Javascript
理解Javascript_10_对象模型
2010/10/16 Javascript
解析JavaScript中delete操作符不能删除的对象
2013/12/03 Javascript
用javascript将数据导入Excel示例代码
2014/09/10 Javascript
JS获取各种宽度、高度的简单介绍
2014/12/19 Javascript
nodejs批量修改文件编码格式
2015/01/22 NodeJs
js限制文本框只能输入整数或者带小数点的数字
2015/04/27 Javascript
JS实现的最简Table选项卡效果
2015/10/14 Javascript
JavaScript操作HTML DOM节点的基础教程
2016/03/11 Javascript
使用Promise解决多层异步调用的简单学习心得
2016/05/17 Javascript
基于Vue.js的表格分页组件
2016/05/22 Javascript
js数组操作方法总结(必看篇)
2016/11/22 Javascript
详解AngularJS中$filter过滤器使用(自定义过滤器)
2017/02/04 Javascript
ES6中Set和Map数据结构,Map与其它数据结构互相转换操作实例详解
2019/02/28 Javascript
微信小程序image图片加载完成监听
2019/08/31 Javascript
vue 获取到数据但却渲染不到页面上的解决方法
2020/11/19 Vue.js
python实现socket端口重定向示例
2014/02/10 Python
Python 遍历子文件和所有子文件夹的代码实例
2016/12/21 Python
对python判断ip是否可达的实例详解
2019/01/31 Python
Python HTML解析模块HTMLParser用法分析【爬虫工具】
2019/04/05 Python
用Python实现最速下降法求极值的方法
2019/07/10 Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
2019/08/12 Python
利用Python的folium包绘制城市道路图的实现示例
2020/08/24 Python
Python基于tkinter canvas实现图片裁剪功能
2020/11/05 Python
Python爬虫实例之2021猫眼票房字体加密反爬策略(粗略版)
2021/02/22 Python
大学生收银员求职信分享
2014/01/02 职场文书
大学生职业生涯规划书模板
2014/01/03 职场文书
品质主管岗位职责
2014/03/16 职场文书
会计专业个人自我鉴定
2014/03/21 职场文书
工商行政处罚决定书
2015/06/24 职场文书
SQL Server #{}可以防止SQL注入
2022/05/11 SQL Server