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