有人告诉我,空的except
会捕获各种异常,但是当我尝试这段代码时,它不会捕获异常并引发SyntaxError
。我在做什么错了?
try:
print "Hello"
except:
print("Caught!") #output: SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Hello")?
即使我将异常类型指定为SyntaxError
,它仍然无法捕获。
try:
print "Hello"
except SyntaxError:
print("Caught!") #output: SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Hello")?
答案 0 :(得分:3)
不。除了捕获所有类型的 runtime 错误外,其他为空。按照定义,语法错误不是运行时错误,因为代码根本无法运行。