查看已安装的Python包依赖树
如有侵权,请联系作者。
转载请注明出处。
帮助他人,记录自己。
目录
- 标签
- 修订历史
- 说明
- 使用
- 安装 pipdeptree
- 查看 pipdeptree 版本
- 直接使用
- 用 freeze 格式显示依赖树
- 显示所有包的依赖树,包括依赖包和被依赖包
- 反转依赖树
- 只显示某些包的依赖树
- 不显示某些包的依赖树
- 使用 Json 格式显示所有包的依赖树,包括依赖包和被依赖包
- 使用 Json 格式只显示顶层依赖树,不包括被依赖包的依赖树
- 使用“帮助”获取更多详细信息
标签
Python 依赖管理,Python 包管理,Python,依赖管理,包管理,依赖树,依赖信息,pip,pipdeptree。
修订历史
- 2020-04-24:首次编辑。
说明
Python 虽然有虚拟环境(virtualenv)工具可以方便管理项目之间的依赖,但是项目内的依赖树依然有些混乱,如果有类似 Java 中 Maven 的 dependency tree 可以一键查看所有依赖树信息就好了。于是在网上找到一款可以方便查看 Python 已安装包的依赖树信息查看工具 pipdeptree。使用方法如下:
使用
安装 pipdeptree
(temp-test) [adam@ZCY ~]$ pip install pipdeptreeLooking in indexes: http://mirrors.aliyun.com/pypi/simple/
Collecting pipdeptreeDownloading http://mirrors.aliyun.com/pypi/packages/12/64/26c7df3ad833cd6e8b9735c5958b25d6aef1617c915b2731baedfbeee712/pipdeptree-0.13.2-py3-none-any.whl (16 kB)
Requirement already satisfied: pip>=6.0.0 in ./virtualenv/temp-test/lib/python3.6/site-packages (from pipdeptree) (20.0.2)
Installing collected packages: pipdeptree
Successfully installed pipdeptree-0.13.2
查看 pipdeptree 版本
(temp-test) [adam@ZCY ~]$ pipdeptree -v0.13.2
直接使用
(temp-test) [adam@ZCY ~]$ pipdeptreeDjango==2.2.12- pytz [required: Any, installed: 2019.3]- sqlparse [required: Any, installed: 0.3.1]
pipdeptree==0.13.2- pip [required: >=6.0.0, installed: 20.0.2]
setuptools==45.2.0
wheel==0.34.2
用 freeze 格式显示依赖树
(temp-test) [adam@ZCY ~]$ pipdeptree -fDjango==2.2.12pytz==2019.3sqlparse==0.3.1
pipdeptree==0.13.2pip==20.0.2
setuptools==45.2.0
wheel==0.34.2
显示所有包的依赖树,包括依赖包和被依赖包
(temp-test) [adam@ZCY ~]$ pipdeptree -aDjango==2.2.12- pytz [required: Any, installed: 2019.3]- sqlparse [required: Any, installed: 0.3.1]
pip==20.0.2
pipdeptree==0.13.2- pip [required: >=6.0.0, installed: 20.0.2]
pytz==2019.3
setuptools==45.2.0
sqlparse==0.3.1
wheel==0.34.2
反转依赖树
(temp-test) [adam@ZCY ~]$ pipdeptree -rpip==20.0.2- pipdeptree==0.13.2 [requires: pip>=6.0.0]
pytz==2019.3- Django==2.2.12 [requires: pytz]
setuptools==45.2.0
sqlparse==0.3.1- Django==2.2.12 [requires: sqlparse]
wheel==0.34.2
只显示某些包的依赖树
(temp-test) [adam@ZCY ~]$ pipdeptree -p djangoDjango==2.2.12- pytz [required: Any, installed: 2019.3]- sqlparse [required: Any, installed: 0.3.1]
不显示某些包的依赖树
(temp-test) [adam@ZCY ~]$ pipdeptree -e djangopipdeptree==0.13.2- pip [required: >=6.0.0, installed: 20.0.2]
setuptools==45.2.0
wheel==0.34.2
使用 Json 格式显示所有包的依赖树,包括依赖包和被依赖包
(temp-test) [adam@ZCY ~]$ pipdeptree -j[{"package": {"key": "wheel","package_name": "wheel","installed_version": "0.34.2"},"dependencies": []},{"package": {"key": "sqlparse","package_name": "sqlparse","installed_version": "0.3.1"},"dependencies": []},{"package": {"key": "setuptools","package_name": "setuptools","installed_version": "45.2.0"},"dependencies": []},{"package": {"key": "pytz","package_name": "pytz","installed_version": "2019.3"},"dependencies": []},{"package": {"key": "pipdeptree","package_name": "pipdeptree","installed_version": "0.13.2"},"dependencies": [{"key": "pip","package_name": "pip","installed_version": "20.0.2","required_version": ">=6.0.0"}]},{"package": {"key": "pip","package_name": "pip","installed_version": "20.0.2"},"dependencies": []},{"package": {"key": "django","package_name": "Django","installed_version": "2.2.12"},"dependencies": [{"key": "sqlparse","package_name": "sqlparse","installed_version": "0.3.1","required_version": null},{"key": "pytz","package_name": "pytz","installed_version": "2019.3","required_version": null}]}
]
使用 Json 格式只显示顶层依赖树,不包括被依赖包的依赖树
(temp-test) [adam@ZCY ~]$ pipdeptree --json-tree[{"key": "django","package_name": "Django","installed_version": "2.2.12","required_version": "2.2.12","dependencies": [{"key": "pytz","package_name": "pytz","installed_version": "2019.3","required_version": "Any","dependencies": []},{"key": "sqlparse","package_name": "sqlparse","installed_version": "0.3.1","required_version": "Any","dependencies": []}]},{"key": "pipdeptree","package_name": "pipdeptree","installed_version": "0.13.2","required_version": "0.13.2","dependencies": [{"key": "pip","package_name": "pip","installed_version": "20.0.2","required_version": ">=6.0.0","dependencies": []}]},{"key": "setuptools","package_name": "setuptools","installed_version": "45.2.0","required_version": "45.2.0","dependencies": []},{"key": "wheel","package_name": "wheel","installed_version": "0.34.2","required_version": "0.34.2","dependencies": []}
]
使用“帮助”获取更多详细信息
(temp-test) [adam@ZCY ~]$ pipdeptree -husage: pipdeptree [-h] [-v] [-f] [-a] [-l] [-u] [-w [{silence,suppress,fail}]][-r] [-p PACKAGES] [-e PACKAGES] [-j] [--json-tree][--graph-output OUTPUT_FORMAT]Dependency tree of the installed python packagesoptional arguments:-h, --help show this help message and exit-v, --version show program's version number and exit-f, --freeze Print names so as to write freeze files-a, --all list all deps at top level-l, --local-only If in a virtualenv that has global access do not showglobally installed packages-u, --user-only Only show installations in the user site dir-w [{silence,suppress,fail}], --warn [{silence,suppress,fail}]Warning control. "suppress" will show warnings butreturn 0 whether or not they are present. "silence"will not show warnings at all and always return 0."fail" will show warnings and return 1 if any arepresent. The default is "suppress".-r, --reverse Shows the dependency tree in the reverse fashion ie.the sub-dependencies are listed with the list ofpackages that need them under them.-p PACKAGES, --packages PACKAGESComma separated list of select packages to show in theoutput. If set, --all will be ignored.-e PACKAGES, --exclude PACKAGESComma separated list of select packages to excludefrom the output. If set, --all will be ignored.-j, --json Display dependency tree as json. This will yield "raw"output that may be used by external tools. This optionoverrides all other options.--json-tree Display dependency tree as json which is nested thesame way as the plain text output printed by default.This option overrides all other options (except--json).--graph-output OUTPUT_FORMATPrint a dependency graph in the specified outputformat. Available are all formats supported byGraphViz, e.g.: dot, jpeg, pdf, png, svg
查看已安装的Python包依赖树相关推荐
- python换中包_在Linux中替换已安装的python包中的源代码
我真的是Linux系统的新手,目前正在Oracle VM VirtualBox上使用Ubuntu linux操作. 我对使用python及其软件包有一些疑问. 已经安装了python以及一个pytho ...
- Ubuntu16.04系统查看已安装的python版本,及Python2与Python3之间切换
1.查看已安装版本 终端输入如下: python2 --version #查看python2安装版本 python3 --version #查看python3安装版本 终端显示如下:系统默认安装2.7 ...
- 用pip查看要安装的python包的所有版本
我使用的是ubuntu20.04,windows下操作相同 文章目录 正文 附 第一点 第二点:可能出现的bug 正文 首先,我的pip版本如下: 然后,就可以通过: : pip index vers ...
- 查看pip安装的python包的位置等详细信息
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一.切换到指定的python环境 二.列出当前环境下所安装的所有包并对特定包查找 很多小白通过pip安装python包之后, ...
- Ubuntu:查看已安装的python版本
python3 --version 或者 python2 --version 或者 pip list and then you can see it.
- Pip/python-如何查看已安装的包有哪些版本?如何查看某个包存在哪些版本?pip list-pip freeze-pip show package
目录 一.如何查看已安装的包有哪些版本? 1.在terminal终端模式或者cmd命令行模式下 1.1显示所有包pip list和pip freeze 1.2显示指定包findstr.show..__ ...
- 查看go 安装了哪些包_如何灵活地进行 Go 版本管理
本文谈下我对 Go 版本管理的一些思考,并给大家介绍一个小工具,gvm.这个话题说起来也很简单,但如果想用的爽,还是要稍微梳理下. 背景介绍 Go 的版本管理,并非包的依赖管理.平时的工作中,很多时候 ...
- 使用 pip freeze 获取安装的 Python 包
使用 pip freeze 获取安装的 Python 包 有时,我们为了代码稳定.代码迁移等,需要获取当前 Python 工程依赖包的安装列表.这个列表要包括需要安装什么包.以及包的版本.这便是:re ...
- 怎么安装python的包_『本地python包怎么通过pyenv安装』python包本地安装教程
python怎么安装第三方类库 pip 大多数库都可以通pip安装,安装方法为,令行窗口输入 pip install libname libname名 某些库通过pip安装不了,可能是因为没有打包上传 ...
最新文章
- c#_StringBuilder的用法总结
- PYTHON的主模块
- OracleDB的数据库名,实例名,服务名,数据库域名,全局数据库名的简单介绍
- Build path contains duplicate entry
- 转载通过 Docker 实现传统应用程序的现代化
- ENSP配置 实例四 默认路由配置
- Kotlin学习笔记 第二章 类与对象 第七节 数据类
- notepad 没有plugin manager_和平精英巅峰赛正式开启,热度却没有象中那么高!
- python中文字体下载_python中matlabplot和seaborn中文字体显示的一种解决方案
- Python风格总结:判断元素是否在列表中存在
- html5引擎 laya,传说中的HTML5超级引擎layabox今日开放
- php多次登录失败,PHPCMS登录后台失败次数过多解决办法
- 基于Java实现的植物大战僵尸游戏
- Photoshop:渐变工具的使用
- 面试官最不喜欢不认同的5个跳槽理由
- 机器视觉引导定位系统,工业视觉定位检测
- ea服务器和微软服务器,任天堂和微软竟然合作了?消息太过震撼,连推特服务器都挤爆了...
- SQL脚本通过汉字转换为拼音全拼
- MongoDB删除记录
- #sql server 导入excel数据报错 未在本地计算机上注册“Microsoft.ACE.OLEDB.16.0”提供程序
热门文章
- 组FreeNas11.3的一点心得
- 曼尼托巴大学计算机科学硕士,曼尼托巴大学计算机科学本科申请.pdf
- TP-LINK WR740N V5.7刷OpenWrt的一些经验
- 真 OO无双之真乱舞书 序言
- 重磅!《新一代人工智能伦理规范》发布丨附全文
- 锐捷服务器无线认证配置,【WLAN从入门到精通之对接案例】配置802.1X认证示例_Web(锐捷SAM服务器)...
- VBA调用系统调色板
- 汇编语言--逻辑指令
- 独享云虚拟主机、共享云虚拟主机、云服务器 ECS 的区别
- 1279 验证角谷猜想