使用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 相关文章推荐
Djang中静态文件配置方法
Jul 30 Python
PyCharm在win10的64位系统安装实例
Nov 26 Python
python实现百度语音识别api
Apr 10 Python
python 字典中文key处理,读取,比较方法
Jul 06 Python
python实现植物大战僵尸游戏实例代码
Jun 10 Python
django-rest-framework 自定义swagger过程详解
Jul 18 Python
解决os.path.isdir() 判断文件夹却返回false的问题
Nov 29 Python
Django实现将views.py中的数据传递到前端html页面,并展示
Mar 16 Python
django创建超级用户时指定添加其它字段方式
May 14 Python
基于Python的自媒体小助手---登录页面的实现代码
Jun 29 Python
python中watchdog文件监控与检测上传功能
Oct 30 Python
PyCharm 安装与使用配置教程(windows,mac通用)
May 12 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
不用iconv库的gb2312与utf-8的互换函数
2006/10/09 PHP
Laravel框架路由配置总结、设置技巧大全
2014/09/03 PHP
Laravel框架使用monolog_mysql实现将系统日志信息保存到mysql数据库的方法
2018/08/16 PHP
laravel5.6 框架操作数据 Eloquent ORM用法示例
2020/01/26 PHP
比较全面的event对像在IE与FF中的区别 推荐
2009/09/21 Javascript
几个比较实用的JavaScript 测试及效验工具
2010/04/18 Javascript
拖动布局之保存布局页面cookies篇
2010/10/29 Javascript
jQuery插件的写法分享
2013/06/12 Javascript
parentElement,srcElement的使用小结
2014/01/13 Javascript
通过JQuery将DIV的滚动条滚动到指定的位置方便自动定位
2014/05/05 Javascript
javascript实现日期格式转换
2014/12/16 Javascript
javascript中setTimeout使用指南
2015/07/26 Javascript
jQuery侧边栏实现代码
2016/05/06 Javascript
详解Javascript中prototype属性(推荐)
2016/09/03 Javascript
基于vue.js实现图片轮播效果
2016/12/01 Javascript
原生JS实现自定义滚动条效果
2020/10/27 Javascript
js中apply与call简单用法详解
2017/11/06 Javascript
vue里面父组件修改子组件样式的方法
2018/02/03 Javascript
详解Nodejs get获取远程服务器接口数据
2019/03/26 NodeJs
Vue 通过公共字段,拼接两个对象数组的实例
2019/11/07 Javascript
在node环境下parse Smarty模板的使用示例代码
2019/11/15 Javascript
基于ant design日期控件使用_仅月份的操作
2020/10/27 Javascript
shelve  用来持久化任意的Python对象实例代码
2016/10/12 Python
python实现键盘控制鼠标移动
2020/11/27 Python
对pandas里的loc并列条件索引的实例讲解
2018/11/15 Python
浅谈Django前端后端值传递问题
2020/07/15 Python
python利用faker库批量生成测试数据
2020/10/15 Python
CSS3实现超酷的黑猫警长首页
2016/04/26 HTML / CSS
HTML5中的网络存储实现方式
2020/04/28 HTML / CSS
两则小学生的自我评价分享
2013/11/14 职场文书
毕业生个人投资创业计划书
2014/01/04 职场文书
应届电子商务毕业自荐书范文
2014/02/11 职场文书
财务审计整改报告
2014/11/06 职场文书
小学生通知书评语
2014/12/31 职场文书
2015年学生会个人工作总结
2015/04/09 职场文书
巧用 -webkit-box-reflect 倒影实现各类动效(小结)
2021/04/22 HTML / CSS