gpt4 book ai didi

python - 如何在Python中管理来自用户的输入错误?

转载 作者:行者123 更新时间:2023-12-03 08:38:58 25 4
gpt4 key购买 nike

我正在尝试编写一个程序,它接受用户的多个输入并执行所需的任何操作,但是我不希望当用户在输入中出现错误时停止程序执行,而是希望该行代码一次又一次地重复直到用户给出有效输入或取消操作为止。
例如我有以下程序:

# Error handling    
i=int(eval(input("Enter an integer: " )))
print(i)
现在,如果用户输入字符串,则会发生以下错误:
Enter an integer: helllo
Traceback (most recent call last):
File "C:/Users/Gaurav's PC/Python/Error Management.py", line 2, in <module>
i=int(input("Enter an integer: " ))
ValueError: invalid literal for int() with base 10: 'helllo'
在这里,我希望Python仅针对有效输入重新运行第2行,直到用户输入正确的输入或取消操作,并且一旦传递了正确的输入,它应该从第3行继续执行,我该怎么做?
我已经使用try和except语句对其进行了一些尝试,但是它们存在许多可能的错误,而且我无法找到一种方法来运行该行,而无需在except块中重新编写它,并且也可以解决一个错误或次数我将相同的代码复制到除外块中。

最佳答案

您可以将其放入while循环中,并检查输入是否为整数:

def is_integer(s):
try:
int(s)
return True
except ValueError:
return False

while True:
i = input("Enter an integer: " )
if is_integer(i):
print(i)
break

关于python - 如何在Python中管理来自用户的输入错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63931063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com