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]