编程要求

根据提示,在右侧编辑器补充代码,编写一个能实现双色球选号的小程序。
双色球选号由7个数字组成y,其中有6个红球,其号码的取值范围为[1,33],一个蓝球的取值范围为[1,16],要求6个红球从小到大排列,蓝球在最后输出。其输出格式为09 12 16 20 30 33 | 03。(注意,如双色球号码为3,则必须输出03)

测试说明

平台会对你编写的代码进行测试:

测试输入:7;
输入说明:选7注
预期输出:

09 12 16 20 30 33 | 03   
01 07 08 09 18 31 | 16   
05 08 21 26 28 31 | 05   
01 03 06 22 25 33 | 02   
02 09 16 20 27 28 | 13   
15 19 24 26 28 32 | 05   
02 05 07 16 24 32 | 09   

输出说明:生成7注双色球号。|后面的数字为蓝球的号码
提示:等概率的生成一组无重复的数,可以采用sample函数,其案例如下
如要在1-10中等概率抽取6位数,代码如下

```python
  from random import sample
    t = [x for x in range(1, 11)]  
    print(sample(t,6))  

代码部分

from random import randrange, randint, sample
import random

def display(balls):
    for i in balls:
        if i<10:
            print("0{:d} ".format(i),end='')
        else:
            print("{:d} ".format(i), end='')
        if balls[5] == i:
            print("| ",end='')
    print()

def random_select():
    list1 = [x for x in range(1, 34)]
    list2 = [x for x in range(1, 17)]
    list3 = sorted(sample(list1, 6), reverse=False) + sample(list2, 1)
    return list3

#n为注数
def main(n):
    for _ in range(n):
        display(random_select())

random.seed(3)
n = int(input())
if __name__ == '__main__':
    main(n)

测试结果:
在这里插入图片描述这题主要要注意的是随机列表的生成和格化式输出的方法。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐