无法创建一会儿无限循环

时间:2020-03-29 21:50:58

标签: python

我正在尝试在PyCharm中构建一个循环,以强制用户仅向程序提交整数。 但是到目前为止,我只有循环输入。

enter image description here

我该怎么办?

2 个答案:

答案 0 :(得分:1)

这是因为input总是返回一个字符串。您可以做的是尝试将此字符串转换为int,捕获此转换失败时引发的异常,然后要求用户重试。例如,像这样:

x = None
while x is None:
    try:
        x = int(input("Enter Number:"))
    except ValueError:
        print("Oops, this doesn't seem right, try again!")

答案 1 :(得分:1)

您必须强制转换input()。如果用户提供了非整数,int()会抛出一个ValueError,您可以按以下方式处理


while True:
    try:
        num = int(input("Insert an integer number: "))
    except ValueError:
        print("Sorry, you must enter an integer.")
        continue
    else:
        print(f"The number is: {num}")
        break
相关问题