我被告知空的
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")?
不。空 except 捕获所有类型的 runtime 错误;根据定义,语法错误不是运行时错误,因为代码根本无法运行。