如何在Python中捕获SyntaxError异常?
每当解析器找到它不理解的源代码时,就会发生SyntaxError。可以在导入模块,调用exec或调用时进行eval()。异常的属性可用于准确地找到输入文本的哪一部分导致了异常。
我们重写给定的代码来处理异常并找到其类型
示例
try:
print eval('six times seven')
except SyntaxError, err:
print 'Syntax error %s (%s-%s): %s' % \
(err.filename, err.lineno, err.offset, err.text)
print err输出结果
C:/Users/nhooo1/~.py Syntax error <string> (1-9): six times seven invalid syntax (<string>, line 1)