使用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 相关文章推荐
批处理与python代码混合编程的方法
May 19 Python
Python守护线程用法实例
Jun 23 Python
Python实现的井字棋(Tic Tac Toe)游戏示例
Jan 31 Python
Python实现自动上京东抢手机
Feb 06 Python
python scipy求解非线性方程的方法(fsolve/root)
Nov 12 Python
Python动态参数/命名空间/函数嵌套/global和nonlocal
May 29 Python
python多线程同步实例教程
Aug 11 Python
keras tensorflow 实现在python下多进程运行
Feb 06 Python
Python面向对象程序设计之类和对象、实例变量、类变量用法分析
Mar 23 Python
PyTorch之nn.ReLU与F.ReLU的区别介绍
Jun 27 Python
Python如何实现远程方法调用
Aug 07 Python
Windows安装Anaconda3的方法及使用过程详解
Jun 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
在Win7 中为php扩展配置Xcache
2014/10/08 PHP
php中字符串和正则表达式详解
2014/10/23 PHP
php foreach如何跳出两层循环(详解)
2016/11/05 PHP
laravel 5.3中自定义加密服务的方案详解
2017/05/09 PHP
thinkphp集成前端脚手架Vue-cli的教程图解
2018/08/30 PHP
关于文本框的一些限制控制总结~~
2010/04/15 Javascript
了解jQuery技巧来提高你的代码(个人觉得那个jquery的手册很不错)
2012/02/10 Javascript
window.showModalDialog()返回值的学习心得总结
2014/01/07 Javascript
jQuery实现统计复选框选中数量
2014/11/24 Javascript
不同编码的页面表单数据乱码问题解决方法
2015/02/15 Javascript
JavaScript将数字转换成大写中文的方法
2015/03/23 Javascript
如何用JS判断两个数字的大小
2016/07/21 Javascript
JavaScript动态检验密码强度的实现方法
2016/11/09 Javascript
一个有意思的鼠标点击文字特效jquery代码
2017/09/23 jQuery
jquery动态添加带有样式的HTML标签元素方法
2018/02/24 jQuery
ES6顶层对象、global对象实例分析
2019/06/14 Javascript
node解析修改nginx配置文件操作实例分析
2019/11/06 Javascript
vscode 调试 node.js的方法步骤
2020/09/15 Javascript
JavaScript setTimeout()基本用法有哪些
2020/11/04 Javascript
Python实现简单登录验证
2016/04/13 Python
利用python微信库itchat实现微信自动回复功能
2017/05/18 Python
python中MethodType方法介绍与使用示例
2017/08/03 Python
Python3 安装PyQt5及exe打包图文教程
2019/01/08 Python
Java TransactionAPI (JTA) 主要包含几部分
2012/12/07 面试题
行政人事经理职位说明书
2014/03/05 职场文书
分层教学实施方案
2014/03/19 职场文书
实践单位评语
2014/04/26 职场文书
班组建设经验交流材料
2014/05/12 职场文书
园林专业毕业生自荐信
2014/07/04 职场文书
2014年国庆节广播稿
2014/09/19 职场文书
教师个人年度总结
2015/02/11 职场文书
2015年小学二年级班主任工作总结
2015/05/21 职场文书
在校学生证明格式
2015/06/24 职场文书
《一面五星红旗》教学反思
2016/02/23 职场文书
辞职申请书范本
2019/05/20 职场文书
python requests模块的使用示例
2021/04/07 Python