0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Python 如何一键转化代码为流程图

科技绿洲 来源:Python实用宝典 作者:Python实用宝典 2023-11-01 10:39 次阅读

Graphviz是一个可以对图进行自动布局的绘图工具,由贝尔实验室开源。我们在上次 Python 快速绘制画出漂亮的系统架构图 提到的diagrams,其内部的编排逻辑就用到了这个开源工具包。

而今天我们要介绍的项目,就是基于Python和Graphviz开发的,能将源代码转化为流程图的工具:pycallgraph。

1.准备

开始之前,你要确保Python和pip已经成功安装在电脑上,如果没有,可以访问这篇文章:超详细Python安装指南 进行安装。

如果你用Python的目的是数据分析,可以直接安装Anaconda:Python数据分析与挖掘好帮手—Anaconda,它内置了Python和pip.

此外,推荐大家用VSCode编辑器,它有许多的优点:Python 编程的最好搭档—VSCode 详细指南

请选择以下任一种方式输入命令安装依赖

  1. Windows 环境 打开 Cmd (开始-运行-CMD)。
  2. MacOS 环境 打开 Terminal (command+空格输入Terminal)。
  3. 如果你用的是 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

    文章

    2991

    浏览量

    41722
  • 代码
    +关注

    关注

    30

    文章

    4556

    浏览量

    66814
  • python
    +关注

    关注

    51

    文章

    4678

    浏览量

    83476
  • 工具包
    +关注

    关注

    0

    文章

    45

    浏览量

    9458
收藏 人收藏

    评论

    相关推荐

    H.264编码器流程图

    H.264编码器流程图说明:1.参考代码版本jm61.流程图中有些地方直接引用已经修改过的代码,未作说明.2.
    发表于 06-25 11:43

    方便快捷:PADS的一键快捷功能:一键灌铜,一键检查DRC

    倾情奉献给大家,非常实用的快捷功能一键灌铜: [hide] [/hide]一键检查连通性:[hide][/hide]一键检查安全间距::[hide] [/hide]一键清除Error标
    发表于 11-07 15:06

    Labview流程图

    Labview能够生成流程图吗,Labview的程序能画流程图吗?
    发表于 07-21 10:09

    求讲解流程图

    求讲解如图的流程图
    发表于 03-10 20:08

    labview画流程图

    labview通过ActiveX控件插入microsoft visio,怎么来实现画流程图啊?
    发表于 04-26 20:42

    基于labview温度湿度测试流程图

    急急急,请问有没有哪位大神做过基于labview温度湿度测试流程图,(注意不是看程序,是看流程图),小弟第次写labview流程图不是太懂写法和格式以及注意的地方,有没有大神可以分享
    发表于 10-16 18:33

    visio画程序流程图

    弄清图形符号: 运行Visio,新建个基本流程图。在形状窗口中用基本流程图的图形符号来表示程序算法。表1给出了较常用的“流程图”所用的基本符号。 举例使用:
    发表于 07-03 00:19

    怎样绘制流程图

    操作。6.绘制成功的流程图可以选择储存在面板中进行使用,也可以选择导出使用,两种保存方式都是时下比较流行的方法。上述就是分享的怎样绘制流程图的凑走方法,从第步的寻找迅捷画图,到框架搭建,内容填充以至于最后的导出
    发表于 01-15 11:38

    Stm32怎么一键下载

    文章目录前言一键下载一键下载原理硬件原理跳帽与启动存储映射串口下载程序由来一键下载流程通过 USB 控制机器复位握手解读前言最近在又要折腾
    发表于 08-05 08:13

    AT89C51单片机的电风扇控制系统设计流程图

    AT89C51单片机的电风扇控制系统设计流程图仿真AT89C51单片机的电风扇控制系统设计+流程图+仿真摘 要:本文设计了以AT89C51
    发表于 09-08 06:52

    小车按照流程图运行

    ,小车向右转1秒。2?.???小车右转约2.6秒可以转90度角。小车按下面的流程图运行,会走出个什么样的图形呢??A?.?会直循环走正方形。B?.?没用电机命令,小车不会运行C?.?走
    发表于 09-13 08:36

    stm32怎么一键下载来着

    一键下载的原理是什么?一键下载的操作流程是怎样的?stm32怎么一键下载来着?
    发表于 10-25 07:28

    TL2543 AD采样程序流程图制作

    多多指教。程序流程图:TL2543 AD采样程序流程图制作出来的实物如下:单片机参考源代码如下:/*接好线后记得共地,根据程序来决定采集通道是IN几。开始时的数据是变化的当采集
    发表于 01-07 07:58

    stm32中的ISP一键下载的原理是什么

    三种工作模式boot 0boot 1启动方式0X内部FLASH10系统存储器11内部SRAM ISP一键下载电路上面的1是正点原子精英版的ISP一键下载原理
    发表于 01-27 07:04

    Python一键转化代码流程图

    而今天我们要介绍的项目,就是基于Python和Graphviz开发的,能将源代码转化流程图的工具:pycallgraph。
    的头像 发表于 02-24 11:19 3057次阅读
    <b class='flag-5'>Python</b><b class='flag-5'>一键</b><b class='flag-5'>转化</b><b class='flag-5'>代码</b>为<b class='flag-5'>流程图</b>