首页 > 解决方案 > 在 Python 中分析导入

问题描述

我有一个现有的库,我想优化导入以缩短加载时间。

使用 cProfile 它并没有真正显示太多。是否有不同的分析器来检查库的导入

谢谢

标签: python-3.xoptimizationprofilecprofile

解决方案


非常有趣的问题。

这将是一个统计分析器无法工作的绝佳案例,因为在不引入巨大开销的情况下,永远不可能有足够的样本来显示有用的数据。

我认为viztracer是您正在寻找的。它可以在您导入库时可视化调用。

import tqdm

假设您在test.py上面有一个文件

pip install viztracer
viztracer test.py
vizviewer result.json

在此处输入图像描述

报告将是这样的。您可以调查更多关于什么是慢的。

但是有一个关键点,因为 VizTracer 自己导入了一些内置库,它会对库导入的速度产生影响,更具体地说,当一些模块已加载时,使您的导入速度更快。

但是,我仍然认为这将是一个比 cProfile 更好的工具,因为 cProfile 也有这个问题。


推荐阅读