练习9.15_彩票分析_Python编程:从入门到实践(第3版)

9.15 彩票分析题目:
可以使用一个循环来理解9.14中前述彩票大奖有多难。为此,创建一个名为my_ticket的列表或元组,再编写一个循环,不断地随机选择数或字母,直到中大奖为止。请打印一条消息,报告执行多少次循环才中了大奖。

from random import choice

elements = [1,2,3,4,5,6,7,8,9,10,'a','b','c','d','e']
rand_element = [] #随机的中奖元素列表

while len(rand_element) <= 3 :
    element = choice(elements)
    rand_element.append(element)
print(f"当彩票上是{rand_element} 这四个元素,你就中大奖啦!")

my_ticket = []
number = 0
while True: 
    number += 1
    while len(my_ticket) <= 3 :
        element1 = choice(elements)
        my_ticket.append(element1)

    if my_ticket ==rand_element:
        print(f"经过了{number}次,我终于中奖啦!这次的号码是{my_ticket}")
        #print(f"我的号码是{my_ticket}")
        break
    else:
        print(f"我的号码是{my_ticket}")
        my_ticket.clear()  #清空列表
        

=========
搜了下,这一题的答案不太多,所以写了这一篇
这一道题对我这个小白来说有点难了,参考了好几个大佬的代码,也自己改了

循环的次数摸不准,如果还有朋友也有这个问题,可以试着把列表里面的字母和数字放少一点,循环少一点,然后自己验证看看

#这是其中一次输出
经过了83825次,我终于中奖啦!这次的号码是['a', 'c', 4, 1]
  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值