溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python如何一鍵轉(zhuǎn)化代碼為流程圖

發(fā)布時(shí)間:2021-10-19 09:31:01 來(lái)源:億速云 閱讀:236 作者:柒染 欄目:大數(shù)據(jù)

這篇文章將為大家詳細(xì)講解有關(guān)Python如何一鍵轉(zhuǎn)化代碼為流程圖,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

Python如何一鍵轉(zhuǎn)化代碼為流程圖

Graphviz是一個(gè)可以對(duì)圖進(jìn)行自動(dòng)布局的繪圖工具,由貝爾實(shí)驗(yàn)室開(kāi)源。我們?cè)谏洗?nbsp;Python 快速繪制畫出漂亮的系統(tǒng)架構(gòu)圖 提到的diagrams,其內(nèi)部的編排邏輯就用到了這個(gè)開(kāi)源工具包。

而今天我們要介紹的項(xiàng)目,就是基于Python和Graphviz開(kāi)發(fā)的,能將源代碼轉(zhuǎn)化為流程圖的工具:pycallgraph。

1.準(zhǔn)備

開(kāi)始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上噢,如果沒(méi)有,請(qǐng)?jiān)L問(wèn)這篇文章:超詳細(xì)Python安裝指南 進(jìn)行安裝。如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda:Python數(shù)據(jù)分析與挖掘好幫手—Anaconda

Windows環(huán)境下打開(kāi)Cmd(開(kāi)始—運(yùn)行—CMD),蘋果系統(tǒng)環(huán)境下請(qǐng)打開(kāi)Terminal(command+空格輸入Terminal),準(zhǔn)備開(kāi)始輸入命令安裝依賴。

當(dāng)然,我更推薦大家用VSCode編輯器,把本文代碼Copy下來(lái),在編輯器下方的終端運(yùn)行命令安裝依賴模塊,多舒服的一件事?。篜ython 編程的最好搭檔—VSCode 詳細(xì)指南。

在終端輸入以下命令安裝我們所需要的依賴模塊:

pip install pycallgraph

看到 Successfully installed xxx 則說(shuō)明安裝成功。

macOS用戶請(qǐng)使用brew安裝:

brew install graphviz

windows用戶請(qǐng)點(diǎn)擊鏈接下載安裝:
https://pythondict.com/go/?url=https://graphviz.gitlab.io/_pages/Download/windows/graphviz-2.38.msi

安裝完成后需要將其寫入到環(huán)境變量中:

Python如何一鍵轉(zhuǎn)化代碼為流程圖

2.生成流程圖

該模塊有兩種調(diào)用方式,一種是在代碼里通過(guò)上下文調(diào)用:

Python如何一鍵轉(zhuǎn)化代碼為流程圖

比如說(shuō),繪制一下咱上回的《Python 我的世界》源代碼的流程圖:

Python如何一鍵轉(zhuǎn)化代碼為流程圖

在運(yùn)行該P(yáng)ython文件后,會(huì)在當(dāng)前文件夾下產(chǎn)生一個(gè)pycallgraph.png的文件,這個(gè)就是該代碼的流程圖:

Python如何一鍵轉(zhuǎn)化代碼為流程圖

還有一種是使用命令的方式調(diào)用,這個(gè)方式必須使用bash才能運(yùn)行,macOS用戶可以忽視這個(gè)問(wèn)題,但如果你是windows用戶,請(qǐng)通過(guò)以下方式打開(kāi)bash(以VS Code為例):

Python如何一鍵轉(zhuǎn)化代碼為流程圖

Python如何一鍵轉(zhuǎn)化代碼為流程圖


然后通過(guò)Ctrl + shift + ` 打開(kāi)一個(gè)新的終端,即可看到以bash啟動(dòng)的命令行。

輸入以下命令生成流程圖:

pycallgraph graphviz -- ./你需要生成流程圖的.py文件


完成后會(huì)在當(dāng)前文件夾下生成一個(gè)pycallgraph.png的文件,這個(gè)就是這份代碼的流程圖。

Python如何一鍵轉(zhuǎn)化代碼為流程圖


通過(guò)這個(gè)方法,你可以清晰地看到這份源代碼里面的調(diào)用邏輯和其每個(gè)模塊的運(yùn)行時(shí)間,是一個(gè)很方便的小工具,非常適合初學(xué)者學(xué)習(xí)他人的開(kāi)源模塊。大家有需要研究的代碼可以用這個(gè)工具試一試,說(shuō)不定有意外的收獲呢。

關(guān)于Python如何一鍵轉(zhuǎn)化代碼為流程圖就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI