python3 - 写一个生成双色球号码的一个程序,生成的号码写到文件里面

Posted 成长园地

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3 - 写一个生成双色球号码的一个程序,生成的号码写到文件里面相关的知识,希望对你有一定的参考价值。

写一个生成双色球号码的一个程序,生成的号码写到文件里面
# 中奖号码由6个红色球号码和1个蓝色球号码组成
# 篮球范围:01-16
# 红球范围:01-33
def swq(num):
random.ranint(1,16)
#tikti.txt
篮球:xx 红球号码是xx 01 08 09 12 13 19
篮球:xx 红球号码是xx 01 08 09 12 13 19

 

import random
f = open("tickets.txt","w+",encoding="utf-8")
def swq(num):
    for i in range(num):
        blueball = str(random.randint(1,16)) #随机产生篮球数字
       
if len(blueball)==1:
            blueball = str(blueball).zfill(2)
            #print(blueball)
       
redball_set = set()
        while len(redball_set) < 6:
            redball = str(random.randint(0,33)) #随机产生红球数字
           
if len(redball)==1:
                redball = str(redball).zfill(2)
                #print(redball)
           
redball_set.add(redball) 
            redballs = list(redball_set)
            redball_str = ""
            for i in redballs:
                redball_str =redball_str +i+" "
        f.write("篮球:"+blueball+" 红球:"+redball_str+"\n")

swq(10)

 

运行后产生的结果为:

篮球:01 红球:22 12 07 31 24 25
篮球:15 红球:20 06 17 09 32 25
篮球:09 红球:19 12 08 31 23 25
篮球:14 红球:15 18 08 11 23 25
篮球:16 红球:27 33 06 28 09 05
篮球:01 红球:16 27 19 29 24 23
篮球:13 红球:16 22 09 32 29 11
篮球:03 红球:02 22 12 32 14 25
篮球:04 红球:26 06 22 09 29 31
篮球:13 红球:16 27 21 17 11 23 

 

总结:

1. 因为要求每次产生的红球数为6个,且不能重复,所以可以将产生的红球放入到集合中,因为集合可以去重复。

redball_set.add(redball) 

2. 打印时,因为需要每行打印出来号码数,但是集合若直接转化为字符串打印,会将红球的数字显示为一串带单引号,逗号的字符窜,不是独立的数字,所以需要将该集合转化为list,然后遍历取出每个值后,变成字符串拼接起来

for i in redballs:
    redball_str =redball_str +i+" "

3. 产生的随机数中,若是一位数,需要前面补0,变成两位数,使用函数"".zfill()

if len(blueball)==1:
    blueball = str(blueball).zfill(2)

 

以上是关于python3 - 写一个生成双色球号码的一个程序,生成的号码写到文件里面的主要内容,如果未能解决你的问题,请参考以下文章

java的彩票

Java模拟生成双色球

python-随机生成N条双色球

使用Python生成双色球号码

小白量化彩票实战彩票号码快速生成组合及利用数据库生成彩票号码组合

python python随机生成双色球号码