我正在运行可能出错的代码,但我希望只要运行它 没有错误。
我想到了类似的东西:
while ValueError:
try:
x = int(input("Write a number: "))
except ValueError:
x = int(input("You must write a number: "))`
答案 0 :(得分:5)
你很近
while True:
try:
x = int(input("Write a number: "))
break
except ValueError:
print("You must write a number: ")
要了解有关异常处理的更多信息,请参阅documentation
答案 1 :(得分:1)
作为Bhargav答案的补充,我想我会提到另一个选择:
while True:
try:
x = int(input("Write a number: "))
except ValueError:
print("You must write a number: ")
else:
break
执行try
语句。如果抛出异常,except
块将接管,并且它会运行。如果没有抛出异常,则执行else
块。不用担心,如果执行except
块,则else
块不会被调用。 :)
此外,你应该注意到这个答案被认为是更多的Pythonic,而Bhargav的答案可以说更容易阅读和更直观。