Python例题:双色球和大乐透随机选号问题

Python例题:双色球和大乐透随机选号问题

import random


def generate(ball_max, ball_num):
    """选择一组随机的球

    :param ball_max: 球的最大值
    :param ball_num: 球的数量
    :return: 保存一组球的列表
    """
    balls = [i for i in range(1, ball_max + 1)]
    selected_balls = random.sample(balls, ball_num)
    selected_balls.sort()
    return selected_balls


def make_big_lottery():
    """生成大乐透的号码"""
    return generate(35, 5) + generate(12, 2)


def make_two_colors():
    """生成双色球的号码"""
    return generate(33, 6) + generate(16, 1)


def display(balls):
    """
    显示一组彩票号码

    :param balls: 装彩票号码对应的球的列表
    """
    for ball in balls:
        print(f'{ball:0>2d}', end=' ')
    print()


n = int(input('机选几注: '))

print('双色球: ')
for _ in range(n):
    display(make_two_colors())

print('大乐透: ')
for _ in range(n):
    display(make_big_lottery())

运行结果:

机选几注: 5
双色球:
09 10 11 14 20 33 04
04 07 08 09 10 29 09
04 07 10 16 27 28 06
12 13 18 22 26 28 06
02 04 06 20 22 31 15
大乐透:
08 14 16 32 35 05 12
02 07 15 18 24 04 08
01 02 05 15 19 04 12
01 22 30 31 33 06 12
08 12 13 24 28 05 08

该程序实现的是机选大乐透和双色球的注数问题,当年指定输入多少注,机器会随机生成你想要的注数,是对函数具有一定知识才能写出,当然你也可以用循环写出,知识重复的位置很多而且程序受限也很大,而函数只需要改变相应的参数即可适应新的需求,可用性很高。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值