用python做一个简单的双色球系统
#初始化开奖号码 import random kaijiang_red=[x for x in range(1, 21)] kaijiang_red_ball=random.sample(kaijiang_red, 5) kaijiang_blue = [x for x in range(1, 11)] kaijiang_blue_ball=random.choice(kaijiang_blue)# 双色球说明 print("星宇双色球\\n双色球投注规则具体规定如下:\\n需要投注5个红色球号码和1个蓝色球号码,提示输入后输入5个红球号码(5个号码各不相同)和1个蓝球号码,""红球输入数值为1~20,蓝球输入数值为1~10,每两个号码之间用逗号隔开。\\n双色球中奖规则具体规定如下:\\n一等奖:投注号码与当期开奖号码全部相同(顺序不限,下同),即中奖;\\n二等奖:投注号码与当期开奖号码中的5个红色球号码相同,即中奖;\\n三等奖:投注号码与当期开奖号码中的任意4个红色球号码和1个蓝色球号码相同,即中奖;\\n四等奖:投注号码与当期开奖号码中的任意3个红色球号码和1个蓝色球号码相同,即中奖;\\n例:假如当期开奖号码为:红球为1,8,13,15,18,蓝球为10,""小明投注号码为:红球为1,8,13,15,18,蓝球为10。则与当期号码全部相同,中一等奖。")#计算排列情况(计算出jiang12,jiang3,jiang4这三个列表,三个列表模拟随机双色球在摇出五个球后红球中五个,红球中四个以上,红球中三个以上这三种情况的所有情况) from itertools import permutations jiang12=[] for jiang12_permutation in permutations(kaijiang_red_ball, 5):jiang12.append(jiang12_permutation)jiang3_4=[] for jiang3_4_permutation in permutations(kaijiang_red_ball,4):jiang3_4.append(jiang3_4_permutation) jiang3=[] for i in range(1,6):for j in range(1,21):for x in range(0,len(jiang3_4)-1):list1=list(jiang3_4[x])list1.insert(i-1,j)jiang3.append(list1)jiang4_3=[] for jiang4_3_permutation in permutations(kaijiang_red_ball,3):jiang4_3.append(jiang4_3_permutation) jiang4_4=[] for i in range(1,5):for j in range(1,21):for x in range(0,len(jiang4_3)-1):list1=list(jiang4_3[x])list1.insert(i-1,j)jiang4_4.append(list1) jiang4=[] for i in range(1,6):for j in range(1,21):for x in range(0,len(jiang4_4)-1):list1=list(jiang4_4[x])list1.insert(i-1,j)jiang4.append(list1)# 用户输入(符合规定即符合双色球说明) import sys x=input('请输入红球号码') user_red_number = x.split(",") user_red = [int(user_red_number[i]) for i in range(len(user_red_number))] if (len(user_red)!=5 or len([x for x in user_red if x>20 or x<1]) or len(user_red) != len(set(user_red))):print("您输入的值不符合规定")sys.exit() else:print("成功输入红球号码") y=int(input('请输入蓝球号码')) if (y>10|(y<1)):print("您输入的值不符合规定")sys.exit() else:print("成功输入蓝球号码")# 判断是否中奖(与计算排列情况对应,判断用户输入的情况是否满足一二三四等奖的要求,否则不中奖,最后显示本次运行模拟的双色球开奖号码) user_red_tuple = tuple(user_red) if y==kaijiang_blue_ball:if user_red_tuple in jiang12:print("恭喜您中了一等奖")elif user_red_tuple in jiang3:print("恭喜您中了三等奖")elif user_red_tuple in jiang4:print("恭喜您中了四等奖") elif user_red_tuple in jiang12:print("恭喜您中了二等奖") else:print("很遗憾,您没有中奖") print("本期红球号码为") print(kaijiang_red_ball) print("本期蓝球号码为") print(kaijiang_blue_ball)#用all列表模拟在数据库中删除用户买过的彩票(这部分可以不写,因为不是真的数据库,所以再次运行会重置all列表) blue = [] red = [x for x in range(1, 21)] for rad_ball_permutation in permutations(red, 5):blue.append(rad_ball_permutation) all = [blue,blue,blue,blue,blue,blue,blue,blue,blue,blue] index_one = all[y - 1].index(user_red_tuple) del all[y-1][index_one]
用python做一个简单的双色球系统相关推荐
- 利用python写一个简单的双色球彩票系统
利用python写一个简单的双色球彩票系统 1.设置每次买的号码一样 写一个双色球彩票系统,系统可以随机产生一组数据,一组彩票数据有六位数,这六位数的的取值范围是0和1. 一张彩票是两块钱,用户可以选 ...
- 【Python】如何用python做一个简单的输入输出交互界面?
看到知乎上有人在问,如何使用Python做一个简单的输入输出交互界面? 交互界面就涉及到GUI编程. Python有很多GUI框架,功能大同小异. 其中比较出名的有「PyQT」.**wxPython. ...
- python自己做个定时器_技术图文:如何利用 Python 做一个简单的定时器类?
原标题:技术图文:如何利用 Python 做一个简单的定时器类? 背景 今天在B站上看有关 Python 最火的一个教学视频 -- "零基础入门学习 Python",这也是我们 P ...
- 用python做一个简单GUI小软件
用python做一个简单软件 前言 这是一个课设,用python做一个扫描王软件 我主要做的GUI部分,记录分享一下.也是第一次用python做小软件,python的方便果然是名不虚传 遇到问题 1. ...
- 用python做一个简单的游戏,用python写一个小游戏
大家好,本文将围绕如何用python做一个简单的小游戏展开说明,python编写的入门简单小游戏是一个很多人都想弄明白的事情,想搞清楚用python做一个简单的游戏需要先了解以下几个事情. 1.Pyt ...
- 【Unity3d】 教会你如何做一个简单的电梯系统(升降平台)
博主第一次写博客,语言略俗,有不足之处还请指正! 由于自己还处在unity小白阶段,受2d升降平台的影响(后续我也会上传关于2d升降平台的文章),突发奇想如何用3d做一个电梯系统,查阅网上资料后,发现 ...
- 利用Python做一个简单的对战小游戏
利用Python做一个简单的文字对战小游戏 一.游戏介绍 1.大体介绍:文字版的对战小游戏,可以利用Python随机生成两个角色,角色带有各自的血量和攻击值两个指标.两人在对战时同时攻击对方,同时造成 ...
- 老滚5初始化python失败_五分钟学会怎么用python做一个简单的贪吃蛇
Pygame 是一组用来开发游戏软件的 Python 程序模块,基于 SDL 库的基础上开发.我们今天将利用它来制作一款大家基本都玩过的小游戏--贪吃蛇. 一.需要导入的包 import pygame ...
- extjs 在textfield后面加一个button_用python 做一个简单的MP3
本节将教大家如何做一个简单的mp3,希望大家能有所收获,写的不足之处望大家谅解. 废话少说,直接上代码: #!/usr/bin/env python # -*- coding: utf-8 -*- i ...
最新文章
- ArcGIS放射状流向地图
- 10、MySQL常用运算符概述
- session的存储方式和配置
- php csv转excel 双引号,PHP高效导出Excel(CSV)
- Linux 启动顺序
- H264之sps解析分辨率
- 一个简单的二层系统分析全程
- PDF怎么转换成PPT?用迅读PDF大师,轻松解决教案问题
- Python 数据框将某列设置为新索引、重新定义行索引、及获取列名
- Traceback (most recent call last)解决方法
- Word 里文字对齐推荐这4种方法
- keras自然语言处理(五)
- python人民币小写转大写_Python小程序人民币小写转大写辅助工具
- 3.5寸TFT LCD彩屏
- Linux源码研究-用户管理员手册-内核命令行参数
- 编写计算机取余程序_计算机软件amp;硬件
- 行频 场频 分辨率公式推导(推荐)
- 8145v5 参数_【DCM-07】Random Parameter(随机参数)Logit模型及其Nlogit实现
- scrapy 解决中途中断爬取问题
- 奇怪!生成网页水印,为啥总扯到 MutationObserver?
热门文章
- 微信公众平台开发之楼盘房产
- 用WINXP安装盘修复系统文件
- vector 基本使用方法
- 【板栗糖GIS】CAD—每次打开CAD都跳转到CASS如何破解
- 最早应用计算机岩土三维模型技术,基于三维地质模型的岩土工程设计与可视分析...
- 自动驾驶:使用 3D 时空卷积网络的自监督点云预测
- 输入一个正整数n,去掉其中任意s个数字后,剩下的数字按原左右次序将组成一个新的正整数。寻找一种方案,使得剩下的数字组成的新数最小
- Keras深度学习(1)-全连接手写数字的识别
- NIO.2中Path、 Paths、Files类的使用
- linux启动xfce桌面,Xfce桌面环境美化完整教程