基本上我只是想知道是否有任何方法可以使这段代码更简洁。我甚至不知道如何正确地提出这个问题,但是我可以编写或导入一个模块或表达来帮助吗?
while True:
try:
guess = int(input("Enter a number here: "))
break
except:
print("Please try again.")
在自由语言中,它可能看起来像:
test:
dothing("user thing")
if issues:
print("try again")
try again
我试图阻止用户输入类似字符串的内容并破坏整个程序的错误。如果这看起来很愚蠢,我道歉;在基本上多年没有使用它之后我又开始进入Python了,我可能会忘记一些简单的事情。
提前多谢你们。
答案 0 :(得分:3)
您的自然语言让我想起了Fortran 4等古老的非结构化语言或旧的基础知识......
在这些语言中,我们习惯转到行引用:
100 CALL INPUTVAL(IVAL, IERR)
IF IERR == 0 GOTO 200
PRINT 50
50 FORMAT('ERROR TRY AGAIN')
GOTO 100
200 CONTINUE
初看起来可能看起来更自然,但很快就会出现意大利面条代码。这就是为什么发明了干净循环和结构化错误处理(尝试除外)的原因。不要后悔旧的 goto 风格并坚持标准结构化构造