使用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 相关文章推荐
Scrapy的简单使用教程
Oct 24 Python
Python3 加密(hashlib和hmac)模块的实现
Nov 23 Python
Python闭包之返回函数的函数用法示例
Jan 27 Python
python 对txt中每行内容进行批量替换的方法
Jul 11 Python
Python使用lambda表达式对字典排序操作示例
Jul 25 Python
pytorch在fintune时将sequential中的层输出方法,以vgg为例
Aug 20 Python
基于python实现学生信息管理系统
Nov 22 Python
pandas实现将日期转换成timestamp
Dec 07 Python
Pycharm内置终端及远程SSH工具的使用教程图文详解
Mar 19 Python
在python中求分布函数相关的包实例
Apr 15 Python
PyQt5 QThread倒计时功能的实现代码
Apr 02 Python
python中Matplotlib绘制直线的实例代码
Jul 04 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
php设计模式小结
2013/02/15 PHP
解决File size limit exceeded 错误的方法
2013/06/14 PHP
页面乱码问题的根源及其分析
2013/08/09 PHP
PHP使用正则表达式清除超链接文本
2013/11/12 PHP
php专用数组排序类ArraySortUtil用法实例
2015/04/03 PHP
php实现文本数据导入SQL SERVER
2015/05/17 PHP
php 读写json文件及修改json的方法
2018/03/07 PHP
Yii1.1框架实现PHP极光推送消息通知功能
2018/09/06 PHP
javascript入门·图片对象(无刷新变换图片)\滚动图像
2007/10/01 Javascript
javascript模拟地球旋转效果代码实例
2013/12/02 Javascript
利用了jquery的ajax实现二级联互动菜单
2013/12/02 Javascript
jQuery使用empty()方法删除元素及其所有子元素的方法
2015/03/26 Javascript
JS中完美兼容各大浏览器的scrolltop方法
2015/04/17 Javascript
简单实现jQuery进度条轮播实例代码
2016/06/20 Javascript
jQuery实现图片轮播效果代码
2016/09/27 Javascript
利用JS实现简单的瀑布流加载图片效果
2017/04/22 Javascript
jQuery实现 RadioButton做必选校验功能
2017/06/15 jQuery
iscroll.js滚动加载实例详解
2017/07/18 Javascript
在vue项目创建的后初始化首次使用stylus安装方法分享
2018/01/25 Javascript
jQuery时间戳和日期相互转换操作示例
2018/12/07 jQuery
这应该是最详细的响应式系统讲解了
2019/07/22 Javascript
JS阻止事件冒泡的方法详解
2019/08/26 Javascript
javascript中的相等操作符(==与===区别)
2019/12/21 Javascript
解决VUE项目使用Element-ui 下拉组件的验证失效问题
2020/11/07 Javascript
python中的五种异常处理机制介绍
2014/09/02 Python
浅析Python四种数据类型
2018/09/26 Python
python爬虫超时的处理的实例
2018/12/19 Python
python:目标检测模型预测准确度计算方式(基于IoU)
2020/01/18 Python
美国内衣品牌:Leonisa
2016/08/14 全球购物
泰国网上购物:Shopee泰国
2018/09/14 全球购物
Notino瑞典:购买香水和美容产品
2019/07/26 全球购物
JAVA高级程序员面试题
2013/09/06 面试题
淘宝店铺营销方案
2014/02/13 职场文书
自动一体化专业求职信
2014/03/15 职场文书
学雷锋感言
2015/08/03 职场文书
springboot使用Redis作缓存使用入门教程
2021/07/25 Redis