Graphviz是一個(gè)可以對(duì)圖進(jìn)行自動(dòng)布局的繪圖工具,由貝爾實(shí)驗(yàn)室開源。我們?cè)谏洗?a href="http://ttokpm.com/tags/python/" target="_blank">Python 快速繪制畫出漂亮的系統(tǒng)架構(gòu)圖提到的diagrams,其內(nèi)部的編排邏輯就用到了這個(gè)開源工具包。
而今天我們要介紹的項(xiàng)目,就是基于Python和Graphviz開發(fā)的,能將源代碼轉(zhuǎn)化為流程圖的工具:pycallgraph。
1.準(zhǔn)備
開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細(xì)Python安裝指南進(jìn)行安裝。
如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda:Python數(shù)據(jù)分析與挖掘好幫手—Anaconda,它內(nèi)置了Python和pip.
此外,推薦大家用VSCode編輯器,它有許多的優(yōu)點(diǎn):Python 編程的最好搭檔—VSCode 詳細(xì)指南。
請(qǐng)選擇以下任一種方式輸入命令安裝依賴:
1. Windows 環(huán)境 打開 Cmd (開始-運(yùn)行-CMD)。
2. MacOS 環(huán)境 打開 Terminal (command+空格輸入Terminal)。
3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
pip installpycallgraph
看到 Successfully installed xxx 則說明安裝成功。
(可選1)macOS 用戶請(qǐng)使用brew一鍵安裝:
brew installgraphviz
(可選2)windows 用戶請(qǐng)點(diǎn)擊鏈接下載安裝:
https://graphviz.gitlab.io/_pages/Download/windows/graphviz-2.38.msi
Windows 安裝完成 graphviz 后需要將其寫入到環(huán)境變量中:
2.生成流程圖
該模塊有兩種調(diào)用方式,一種是在代碼里通過上下文調(diào)用:
比如說,繪制一下咱上回的《Python 我的世界》源代碼的流程圖:
在運(yùn)行該P(yáng)ython文件后,會(huì)在當(dāng)前文件夾下產(chǎn)生一個(gè)pycallgraph.png的文件,這個(gè)就是該代碼的流程圖:
還有一種是使用命令的方式調(diào)用,這個(gè)方式必須使用bash才能運(yùn)行,macOS用戶可以忽視這個(gè)問題。如果你是windows用戶,請(qǐng)通過以下方式打開bash(以VS Code為例):
然后通過Ctrl + shift + ` 打開一個(gè)新的終端,即可看到以bash啟動(dòng)的命令行。
輸入以下命令生成流程圖:
pycallgraph graphviz -- ./你需要生成流程圖的.py文件
完成后會(huì)在當(dāng)前文件夾下生成一個(gè)pycallgraph.png的文件,這個(gè)就是這份代碼的流程圖。
通過這個(gè)方法,你可以清晰地看到這份源代碼里面的調(diào)用邏輯和其每個(gè)模塊的運(yùn)行時(shí)間,是一個(gè)很方便的小工具,非常適合初學(xué)者學(xué)習(xí)他人的開源模塊。大家有需要研究的代碼可以用這個(gè)工具試一試,說不定有意外的收獲呢。
我們的文章到此就結(jié)束啦,如果你喜歡今天的Python 實(shí)戰(zhàn)教程,請(qǐng)持續(xù)關(guān)注Python實(shí)用寶典。
-
流程圖
+關(guān)注
關(guān)注
2文章
63瀏覽量
18696 -
源代碼
+關(guān)注
關(guān)注
96文章
2943瀏覽量
66617 -
python
+關(guān)注
關(guān)注
55文章
4767瀏覽量
84375
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論