python - 对于带有 raw_input 的循环,If 语句应将输入增加 1
问题描述
大家!我目前正在学习 Python(没有先前的编码技能 - 至少不足以提及它们)并且我正在努力解决我们应该为家庭作业做的彩票机中的 for 循环。在过去的两个小时里,我一直在谷歌上搜索这个,但我找不到任何可以暗示我朝着正确方向前进的东西。
我希望循环创建一个带有随机数的列表。打印给用户的随机数数量应由用户输入定义,并且不应使用重复项。每次创建副本时,它应该简单地选择一个不同的数字。关于我在这里搞砸的任何提示?(请注意它是 Python 2.x)
谢谢你们!:)
代码:
from random import randint
lotterylist = []
print "Welcome to the lottery machine!"
mynumbers = int(raw_input("How many numbers should be drawn?\n"))
for i in range(0, mynumbers):
lottery_numbers = randint(0, 48)
if lottery_numbers not in lotterylist:
lotterylist.append(lottery_numbers)
else:
mynumbers += 1
continue
print lotterylist
print "End"
解决方案
您可以这样做,因为老实说,当前的代码没有多大意义。
for _ in range(0, num):
snum = randint(0, 48)
while snum in numlist:
snum = randint(0, 48)
numlist.append(snum)
这将继续创建一个新数字,直到选择不在列表中的数字,然后退出 while 循环并将该数字附加到生成的数字列表中。无需不断增加范围;展望未来,您应该明白,如果您的逻辑需要类似的东西,那么这意味着它有缺陷。您当前的方法没有意义。
推荐阅读
- c# - 由于病毒扫描程序导致 WCF 通信缓慢
- flutter - 在颤振中使用 URL 启动器发送电子邮件的问题
- reactjs - React 中的 DOM 节点是否有对应的 Angular“插槽”?
- android - 使用teamCity构建到s3后上传ipa和apk
- java - 执行的后台和前台服务
- angular - 如何在 Angular 2 中添加使用 razor index.cshtml insted 静态文件的自定义 UseSpa?
- python - 如何创建具有函数特殊(dunder)属性的 Mock
- python - 从 numpy.random.multinomial 获取随机的索引数组
- python - 如何选择具有特定值的列迭代数据框中的所有行?
- python - 如何构建thundersvm?