python项目入门新手攻略

最近工作需要接手了代码量比较大的python开发的项目,平时写python不多,记录一下如何熟悉项目。

分析调用流程-pycallgraph

因为代码量比较大,所以希望通过工具生成代码调用流程,因此用到了pycallgraph。

pycallgraph(Python Call Graph)是一个专业的代码调用流程可视化工具,地址在这里

安装步骤

环境Ubuntu2004,指令如下:

sudo apt install python3-pycallgraph

使用方式

pycallgraph有两种使用方式,一是命令行,二是代码调用

# 命令行调用
pycallgraph graphviz -- 测试的脚本

执行完成后当前目录下会出现一张图片,显示所有涉及到的调用流程,包括python内部的实现

生成的流程图如下:

简单的程序可以直接用命令行实现,不过复杂的程序这样看起来太乱了,推荐使用代码过滤。

from pycallgraph import PyCallGraph
from pycallgraph import Config
from pycallgraph import GlobbingFilter
from pycallgraph.output import GraphvizOutput
# 以上是需要引入的
from banana import Banana

# 设置过滤器
config = Config()
# exclude是不包含,include是包含
config.trace_filter = GlobbingFilter(exclude=[
    'pycallgraph.*',
    '*.secret_function',
])

# 设置输出文件的名称
graphviz = GraphvizOutput(output_file='filter_exclude.png')

# 运行的代码加在这一行后面
with PyCallGraph(output=graphviz, config=config):
    banana = Banana()
    banana.eat()

这样可以选择性的呈现流程,选择之后的效果图(不是上面这份代码的图)如下:

这样清晰多了。

生成uml图

安装步骤

sudo apt install pylint

使用方式

pyreverse -ASmy -o png  测试的脚本或者目录

运行完成之后当前目录会出现uml图,可以查看类以及提供的接口。

参考链接

python的UML类图自动生成工具--pyreverse安装和使用-CSDN博客

使用pycallgraph和graphviz查看函数调用图-CSDN博客

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-05-01 19:10:03       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-01 19:10:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-01 19:10:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-01 19:10:03       18 阅读

热门阅读

  1. 2024.4.28 —— LeetCode 高频题复盘

    2024-05-01 19:10:03       11 阅读
  2. 预编码算法学习笔记

    2024-05-01 19:10:03       8 阅读
  3. 2.9 VM17虚拟机安装Centos系统和docker

    2024-05-01 19:10:03       13 阅读
  4. 深入解析 `org.elasticsearch.action.search.SearchRequest` 类

    2024-05-01 19:10:03       13 阅读
  5. SpringCloud 学习笔记 —— 一、背景

    2024-05-01 19:10:03       14 阅读