2011-06-01 44 views

回答

3

RPython,背後PyPy翻譯工具鏈,提供斂flow graph(在pypy/rpython/flowspace目錄PyPy項目)爲​​的一種方式。

這在大多數情況下工作得很好,但不支持生成器。結果將以SSA形式出現,這可能是好的或壞的,取決於你想要的。

+2

鏈接已斷開。請更新? – inspectorG4dget 2013-01-09 00:38:39

+0

也許是這樣的:http://doc.pypy.org/en/latest/objspace.html#the-flow-model和http://doc.pypy.org/en/release-2.0-beta2/translation.html#該註釋通過 – slashdottir 2014-02-19 16:46:38

-1

http://pycallgraph.slowchop.com/看起來像你所需要的。

Python trace模塊也有選項--trackcalls,它可以是stdlib中的呼叫跟蹤機制的入口點。

+1

該問題詢問[Control Flow Graph](http://en.wikipedia.org/wiki/Control_flow_graph),而不是[Call Graph](http://en.wikipedia.org/wiki/Call_graph)。 – 2013-09-28 08:03:15

+0

已接受。 Call Graph是CFG的子集嗎?維基百科對彼此之間的關係保持沉默。我認爲你可以從過濾的CFG構建CG。 – 2013-09-28 09:03:14

+0

@johntex,關於比較兩種方法的問題。你有什麼關於[使用AST散列](https://groups.google.com/forum/#!topic/python-ideas/GWqOddowZ5c)呢? – 2013-09-28 09:04:20

相關問題