主页

索引

模块索引

搜索页面

pipdeptree-依赖分析

  • pipdeptree 是一个用于生成 已安装 Python 包及其依赖关系 的树状图的工具。

  • 它可以帮助开发者直观地查看项目中所有包及其依赖关系,便于管理和解决依赖冲突。

  • A command line utility to display dependency tree of the installed Python packages

  • GitHub: https://github.com/tox-dev/pipdeptree

  • https://pypi.org/project/pipdeptree/

主要特点:

显示依赖树:pipdeptree 以树状结构显示所有已安装包及其依赖关系,清晰地展示包之间的层次关系。
可选输出格式:支持多种输出格式,包括纯文本和 JSON 格式,便于进一步处理和集成。
过滤选项:提供多种过滤选项,可以选择显示特定包及其依赖关系,或者排除不需要的包。
检查依赖冲突:帮助检测和解决依赖冲突问题,确保项目中的包版本兼容。

安装:

pip install pipdeptree

使用方法:

# 生成并显示当前环境中所有包的依赖树
pipdeptree

# 生成 JSON 输出
pipdeptree --json



# 排除特定包
pipdeptree --exclude setuptools,pip
pipdeptree --exclude jupyter --exclude langchain

直接生成文件:

格式:
    --graph-output FMT
FMT包括:
    dot, jpeg, pdf, png, svg

1. 生成svg文件
pipdeptree --graph-output svg > aa2.svg

2. 生成png文件
pipdeptree --graph-output png > aa2.png

缺点:

仅限已安装包:只能显示当前环境中已安装的包的依赖关系,不能直接解析项目中的依赖文件(如 requirements.txt)。
复杂项目中的性能:对于依赖关系非常复杂的大型项目,生成的依赖树可能比较庞大和复杂。

示例

指定特定包:

$ pipdeptree --packages requests
requests==2.32.2
├── certifi [required: >=2017.4.17, installed: 2023.7.22]
├── charset-normalizer [required: >=2,<4, installed: 3.1.0]
├── idna [required: >=2.5,<4, installed: 3.4]
└── urllib3 [required: >=1.21.1,<3, installed: 1.26.15]

主页

索引

模块索引

搜索页面