如何在python中捕获IndentationError异常?

每当解析器发现不遵循缩进规则的源代码时,就会发生IndentationError。我们可以在导入模块时捕获它,因为该模块将在首次导入时进行编译。您无法将其捕获在包含try / except块的模块中,因为存在这种例外,Python无法完成模块的编译,并且模块中的任何代码都不会运行。

我们重写给定代码,如下所示以处理异常

示例

try:
def f():
z=['foo','bar']
for i in z:
if i == 'foo':
except IndentationError as e:
print e

输出结果

"C:/Users/nhooo1/~.py", line 5
if i == 'foo':
^
IndentationError: expected an indented block