official Python documentation状态
(至少)有两种可区分的错误:语法错误和异常。
但是,当查看Exception Hierarchy时,我发现语法错误意味着引发了SyntaxError
异常,因此,它没有任何“特殊”之处,它是与其他所有异常一样的常规异常,例如RuntimeError
,ValueError
或OSError
。
那么官方文档有误吗?
答案 0 :(得分:2)
几乎没有什么特别的。通常进口会扔掉它,所以您甚至可以抓住它
try:
import xyz
except SyntaxError:
pass
但是有一种特殊的行为。如果在主模块中发生语法错误,那么您将无法拦截它。在main.py
中出现语法错误,而您进行python main.py
的情况。