我一直在试图弄清楚检索Python代码的控制流图的正确方法是什么,我正在寻找类似输出,因为我在ac程序上获得了gcc输出(我使用过gcc -fdump-tree-cfg)。
我将举一个简短的例子来澄清我的意图,例如给出以下简单的c源代码:
我有控制流程图,如下所示:
cfg输出包含原始 c关键字和 goto 说明, 而不是循环(for,while etc ..),这对我来说很好。
所以在过去的几天里我一直在研究为一个python代码实现一个cfg生成器,深入研究AST模块(阅读:Green Tree Snakes)但是它看起来AST非常详细地解析每个关键字,但我想避免它。我更关注从原始python脚本中获取的原始关键字的流程。
有没有人有任何建议, 如何实现呢?
谢谢大家!