我想使用缩进代码控制,并有两个问题。
1)是否可以强制python忽略'意外缩进'错误? 像这样的代码引发了意想不到的缩进'异常。
def test():
print ('hello')
print ('again!')
这里是否有正常执行上述代码的任何标志或其他技巧?
2)我如何在程序中获得缩进级别?是这样的:
import introspectionmagic
def a():
l = introspectionmagic.get_indent_level_of_function_call ()
print ('level =', l)
def test():
a()
a()
输出:
level = 1
level = 2
谢谢!
答案 0 :(得分:0)
IndentationErrors是语法错误;它们发生在编译时,而不是运行时。所以你不能在代码中做任何事情来忽略它们;你需要以某种方式改变解析器。
您可以考虑使用Python的上下文管理器。这些可以在进入块时运行特定代码;这可能适合您的用例,即使实际的输入代码非常简单。有关示例,请参阅contextlib模块。