Graphviz是一個可以對圖進行自動布局的繪圖工具,由貝爾實驗室開源。我們在上次 Python 快速繪制畫出漂亮的系統架構圖 提到的diagrams,其內部的編排邏輯就用到了這個開源工具包。
而今天我們要介紹的項目,就是基于Python和Graphviz開發的,能將源代碼轉化為流程圖的工具:pycallgraph。
1.準備
開始之前,你要確保Python和pip已經成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細Python安裝指南 進行安裝。
如果你用Python的目的是數據分析,可以直接安裝Anaconda:Python數據分析與挖掘好幫手—Anaconda,它內置了Python和pip.
此外,推薦大家用VSCode編輯器,它有許多的優點:Python 編程的最好搭檔—VSCode 詳細指南。
請選擇以下任一種方式輸入命令安裝依賴 :
- Windows 環境 打開 Cmd (開始-運行-CMD)。
- MacOS 環境 打開 Terminal (command+空格輸入Terminal)。
- 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install pycallgraph
看到 Successfully installed xxx 則說明安裝成功。
(可選1) **macOS **用戶請使用brew一鍵安裝:
brew install graphviz
**(可選2)windows **用戶請點擊鏈接下載安裝:
https://graphviz.gitlab.io/_pages/Download/windows/graphviz-2.38.msi
Windows 安裝完成 graphviz 后需要將其寫入到環境變量中:
2.生成流程圖
該模塊有兩種調用方式,一種是在代碼里通過上下文調用:
比如說,繪制一下咱上回的《Python 我的世界》源代碼的流程圖:
在運行該Python文件后,會在當前文件夾下產生一個pycallgraph.png的文件,這個就是該代碼的流程圖:
還有一種是使用命令的方式調用,這個方式必須使用bash才能運行,macOS用戶可以忽視這個問題。如果你是windows用戶,請通過以下方式打開bash(以VS Code為例):
然后通過Ctrl + shift + ` 打開一個新的終端,即可看到以bash啟動的命令行。
輸入以下命令生成流程圖:
pycallgraph graphviz -- ./你需要生成流程圖的.py文件
完成后會在當前文件夾下生成一個pycallgraph.png的文件,這個就是這份代碼的流程圖。
通過這個方法,你可以清晰地看到這份源代碼里面的調用邏輯和其每個模塊的運行時間,是一個很方便的小工具,非常適合初學者學習他人的開源模塊。大家有需要研究的代碼可以用這個工具試一試,說不定有意外的收獲呢。
-
開源
+關注
關注
3文章
3251瀏覽量
42406 -
代碼
+關注
關注
30文章
4748瀏覽量
68355 -
python
+關注
關注
56文章
4782瀏覽量
84453 -
工具包
+關注
關注
0文章
46瀏覽量
9524
發布評論請先 登錄
相關推薦
評論