我想转储给定python代码的控制流图, 类似于gcc编译器选项给出的选项:-fdump-tree-cfg for c code。
我成功获得了python代码的AST(抽象语法树), 但是从AST阶段获得控制流图是非常复杂和麻烦的。
是否有更简单的方法直接检索python代码的控制流图?有什么建议吗?
哦顺便说一句,我使用的是python3.5
谢谢大家!
P.S 我真的不知道我在引擎盖下使用什么样的口译员, 据我所知,CPython(不确定),我不认为它是PyPy(Rpython)。 任何建议如何验证?
答案 0 :(得分:2)
查看我的SO answer on how to build a control flow graph, using an AST。
最初的问题是关于Java的CFGs,但这种方法实际上非常通用,并且相同的方法可以用于为Python生成CFG。
我不会称之为“相当复杂”;基本的想法很简单。