python - while 循环和计数器
问题描述
我已经收到了这个问题,在我完全理解为什么它不起作用之前,我试图不看答案:
“扩展您的程序,使其要求用户输入 1 到 59 之间的 6 个数字。输入 6 个数字后,程序应显示一条消息,列出所选数字”
invalid = True
counter = 0
while invalid and counter <6:
number = int(input("please enter a number in the range between 1 and 59: "))
if number >=1 and number <=59:
invalid = False
else:
print("so sorry, your number must be between 1 and 59")
print("have another go!")
print("well done!")
print (number)
有谁知道最简单的方法来做到这一点?我已经了解了上面的代码,但它没有考虑我的计数器,我也不知道如何显示用户输入的输出。
解决方案
无需柜台或无效
lst = [] # to contain numbers input by user
while len(lst) < 6: # know count from length of list
number = int(input("please enter a number in the range between 1 and 59: "))
if 1 <= number <= 59: # equivalent, but more readable form than
# if number >=1 and number <=59:
lst.append(number)
else:
print("so sorry, your number must be between 1 and 59")
print("have another go!")
print("well done!")
print (lst) # numbers input by user
推荐阅读
- c++ - Stoi 以 std::invalid_argument 类型的未捕获异常终止:stoi:无转换
- android - Firebase fcm 令牌未生成
- java - 如何使由wsdl生成的java类Serializable
- github - 在不克隆的情况下更新 GitHub 存储库
- javascript - Angular 仅在自上次轮询后发生更改时才更新对象
- excel - 如果添加了行,则自动在另一个工作表中插入行
- time - 以特定速率滴答作响的秒表?
- django-rest-framework - 什么是允许 REST API 公开的安全方法?
- mysql - MySQL 的 UNION ALL 性能调优?
- python - 如何对数据透视表上的值进行分组?