python-3.x - 在 while 循环中尝试 & if 语句
问题描述
我想构建一个函数,如果输入的整数在 1 到 10 之间,则返回结果。
这是我的代码:
while True:
try:
num = int(input("Enter a number (1-10): "))
except ValueError:
print("Wrong input")
else:
if 1 <= num <= 10:
break
else:
print("Wrong input")
continue
当你输入一个整数时,break
它不能正常工作,它似乎进入了一个明确的循环。if
将语句合并到中是错误的else
吗?
解决方案
而不是 break,打印 num。
isBetweenOneAndTen = True
while isBetweenOneAndTen == True:
try:
num = int(input("Enter a number (1-10): "))
except ValueError:
print("Wrong input")
else:
if 1 <= num <= 9:
print(num)
isBetweenOneAndTen = False
else:
print("Wrong input")
continue
推荐阅读
- ruby-on-rails - 在 Ruby on Rails 中,如何保存许多引用同一类的其他实例的 ActiveRecord 对象?
- css - 如何将 flexbox 项目对齐到最左边、最右边和中心?
- python - 等待 BlockingScheduler 直到前一个作业完成执行
- javascript - 如何通过代理服务器发出 http 请求(Google App Script / JavaScript)
- c++ - 不调用复制赋值运算符=
- apache-kafka - Camel-Kafka 安全协议 SASL_SASL 不起作用
- javascript - 如何在当悬停在上面时
- tsql - SQL case 表达式中未选取小数
- python - 在使用 NumPy 时了解 randn 的最小值和最大值
- php - PHP 无法使用不是来自 C 文件的 shell 文件调用命令 (Prokka)