欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 金融 > python-21-零基础自学python 写了一个彩票 发现买彩票中了真的是天选

python-21-零基础自学python 写了一个彩票 发现买彩票中了真的是天选

2024/10/25 21:21:40 来源:https://blog.csdn.net/m0_65362302/article/details/140199889  浏览:    关键词:python-21-零基础自学python 写了一个彩票 发现买彩票中了真的是天选

学习内容:《python编程:从入门到实践》第二版

知识点:

from random import choice、choice()函数用法、while循环

练习内容:

练习9-14:彩票

创建一个列表或元组,其中包含10个数和5个字母。从这个列表或元组中随机选择4个数或字母,并打印一条消息,指出只要彩票上是这4个数或字母,就中大奖了。

练习9-15:彩票分析

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

我的代码&运行结果:

练习

练习9-14:彩票

创建一个列表或元组,其中包含10个数和5个字母。从这个列表或元组中随机选择4个数或字母,并打印一条消息,指出只要彩票上是这4个数或字母,就中大奖了。

from random import choice
list = [1,2,3,4,5,6,7,8,9,0,"a","b","c","d","e"]
listyes = [0,7,5,"a"]
print("如果抽中075a,就会获得大奖")
first = choice(list)
print(f"第一个数是{first}")
second = choice(list)
print(f"第二个数是{second}")
third = choice(list)
print(f"第三个数是{third}")
forth = choice(list)
print(f"第一个数是{forth}")
#到这里就可以结束
if first in listyes and second in listyes and third in listyes and forth in listyes and first !=second !=third !=forth:print("恭喜你抽中啦")
else:print("很遗憾,这次未中")

练习

练习9-15:彩票分析

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

from random import choice
list = [1,2,3,4,5,6,7,8,9,0,"a","b","c","d","e"]
listyes = [0,7,5,"a"]
my_ticket = []
print("如果抽中075a,就会获得大奖")
time = 0while True:first = choice(list)my_ticket.append(first)print(f"第一个数是{first}")second = choice(list)my_ticket.append(second)print(f"第二个数是{second}")third = choice(list)my_ticket.append(third)print(f"第三个数是{third}")forth = choice(list)my_ticket.append(forth)print(f"第一个数是{forth}")time += 1if my_ticket != listyes:print("很遗憾,这次未中")print(f"循环第{time}次")else:print("恭喜你抽中啦")print(f"循环第{time}次")break

 

注意点:这个彩票分析,总之是可能永远也抽不到,很容易让系统崩溃,运行结果就是上面这个,不断循环。

总结&问题:

1.这次练习有个问题,就是如果不在类里面,能否写一个方法呢?

2.一个代码认清楚买彩票中了有多难orz

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com