编写Python函数:完成一个双色球彩票的模拟生成过程,

其中前六个为红色球,数字范围1-33,不可重复。最后一个为蓝色球 1-16。

import random

#red_nums是采集红色球的数字,
#集合的目的是不用判断随机数字是否重叠,比较方便。如果使用列表,就要先去重后再来判断长度是否到6,如果先判断长度是否到6,万一列表里有重复的元素,去重后就没有6个元素了。
red_nums= set()
while True:
red_num = int(random.random() * 34) #random.random()返回随机生成的一个实数,它在[0,1)范围内,所以要想得到33,必须乘以34
if red_num == 0:
continue
else:
red_nums.add(red_num) #add()方法用于给集合添加元素,如果添加的元素在集合中已存在,则不执行任何操作
if len(red_nums) == 6:
break # 将集合进行排序,彩票就是这样的,前6个数字从小到大
red_ = sorted(red_nums)
# 将集合转为列表的形式,方便向该数字中增加蓝色数值
double_ball = list(red_) # 生成一个不为0的1~16的蓝色球数字
while True:
blue_num = int(random.random() * 17)
if blue_num != 0:
break # 组合成双色球,蓝色球数字和前六个红色球的数字之间没有关系
double_ball.append(blue_num)  
print(double_ball)

最新文章

  1. mvc action controller area
  2. Web Audio API 实现音频可视化
  3. Home not found. Define system property "openfireHome" or create and add the openfire_init.xml file to the classpath
  4. JAVA动态加载JAR包执行程序
  5. 【Python之路Day12】网络篇之Paramiko
  6. OracleHelper[.Net 连接Oracle数据库的封装类]
  7. 深入了解三种针对文件(JSON、XML与INI)的配置源
  8. uva 10548 - Find the Right Changes(拓展欧几里得)
  9. uvaLive5713 次小生成树
  10. 解开神秘面纱之“AngualrJS 中指令相关的嵌入作用域和模板作用域”
  11. java 生产者消费者简单实现demo
  12. shell中使用类似Python的参数处理
  13. Unable to locate appropriate constructor on class报错
  14. ASP.NET Web API 启用跨域访问
  15. 交互式shell编程
  16. python笔记1-基础概念、python安装使用配置
  17. 3个问题:MySQL 中 character set 与 collation 的理解;utf8_general_ci 与 utf8_unicode_ci 区别;uft8mb4 默认collation:utf8mb4_0900_ai_ci 的含义
  18. Android 在闹钟开机时,如何解决开机动画没有播完就进入Launcher M
  19. spring事务管理——编程式事务、声明式事务
  20. 怎么在eclipse中安装svn插件

热门文章

  1. byte与base64string的相互转化以及加密算法
  2. 2019-4-8 zookeeper集群介绍学习笔记2
  3. Linux下安装git本地库与服务器端远程库
  4. mySQL查看存储过程、函数、视图、触发器
  5. Python之字符串转换为日期、结合时区的日期操作
  6. ubuntu16.04安装jdk1.8(java1.8)
  7. Oracle之分页问题
  8. linux ---pgbouncer的安装和配置
  9. ivew Upload 上传时附带的额外参数
  10. 记录下通过Java代码打开cmd启动appium server及在使用过程中碰到的问题