如何列出已安装的 Python 包

处理 Python 项目可能需要列出已安装的 Python 包,以便管理依赖项、检查更新或与其他人共享项目需求。在这篇文章中,我们将研究多种用于列出系统上安装的 Python 包的技术。

列出已安装的 Python 包

下面是一些我们可以列出已安装的 Python 包的方法:

  • 使用 pip 列表
  • 使用 pip 冻结
  • 使用 Python 的 pkg_resources
  • 使用 pipdeptree
  • 使用 Pipenv
  • 使用 Jupyter 笔记本

使用 pip list 列出已安装的 Python 包

列出已安装的 Python 包的最常见方法是使用 pip 命令行工具。pip 是 Python 的标准包管理器,它预装在 Python 3.4 及更高版本中。

我们可以使用 list 命令列出使用 pip 已安装的软件包。只需打开终端或命令提示符并运行以下命令,你将看到所有已安装软件包的列表。

python 复制代码
pip list

此命令将显示 Python 环境中安装的所有 Python 包及其版本的列表。你还可以将输出重定向到文本文件(可选)如果要将已安装软件包的列表保存到文本文件,可以使用以下命令:

python 复制代码
pip list > installed_packages.txt

此命令将创建一个名为installed_pa​​ckages.txt 的文件并在其中保存包列表。

使用 pip freeze 列出 Python 包

另一个常用的列出已安装软件包的命令是 pip freeze,尤其是在 Python 项目管理上下文中。此命令生成已安装的软件包及其版本的列表,其格式通常用于在requirements.txt 文件中指定项目依赖项。

我们可以使用 pip freeze 列出已安装的 Python 包。只需打开终端或命令提示符并运行以下命令。

python 复制代码
pip freeze

此命令将显示已安装的软件包及其版本的列表,类似于你在requirements.txt 文件中可能找到的内容。

使用 Python 的 pkg_resources 模块列出 Python 包

如果你更喜欢通过编程方式从 Python 脚本中列出已安装的软件包,则可以使用 setuptools 软件包中的 pkg_resources 模块。以下是如何使用它的示例:

python 复制代码
import pkg_resources

installed_packages = pkg_resources.working_set
for package in installed_packages:
	print(f"{package.key}=={package.version}")

该脚本将打印 Python 环境中所有已安装软件包的名称和版本。

使用 pipdeptree 列出 Python 包

pipdeptree 是一个 Python 包,可帮助你以树状结构可视化并列出已安装包的依赖关系。要使用它,你需要先安装它:

python 复制代码
pip install pipdeptree

安装 pipdeptree 后,你可以列出已安装的软件包及其依赖项,如下所示:

python 复制代码
pipdeptree

此命令将显示已安装软件包及其依赖项的树状结构。

使用 pipelinev 列出已安装的软件包

Pipenv 是用于管理 Python 项目环境和依赖项的流行工具。它结合了 pip 和 virtualenv 来为你的项目创建隔离的 Python 环境。要列出 Pipenv 环境中已安装的软件包,请执行以下步骤:

  • 打开终端或命令提示符并导航到 Pipfile 所在的目录。
  • 激活虚拟环境:
python 复制代码
pipenv shell

列出已安装的软件包:

python 复制代码
pipenv lock --requirements

此命令将显示已安装的软件包及其版本的列表。

使用 Jupyter Notebook

如果我们使用 Jupyter Notebook 进行 Python 开发并希望列出笔记本中已安装的软件包,我们可以使用 ! (shell 命令)前缀。就是这样:

  • 打开 Jupyter Notebook:通过在终端中运行 jupyter Notebook 来启动 Jupyter Notebook。
  • 创建新笔记本或打开现有笔记本:你可以创建新笔记本或打开现有笔记本,以在其中列出已安装的软件包。
  • 列出笔记本单元中已安装的软件包:
python 复制代码
!pip list

在笔记本单元中运行此命令将在笔记本输出中显示已安装软件包及其版本的列表。

相关推荐
程序员爱钓鱼1 分钟前
Python编程实战 - 面向对象与进阶语法 - 封装与私有属性
后端·python·ipython
nvd112 分钟前
python异步编程 -- 理解协程函数和协程对象
开发语言·python
IT_陈寒6 分钟前
Spring Boot 3.2性能翻倍!我仅用5个技巧就让接口响应时间从200ms降到50ms
前端·人工智能·后端
风象南17 分钟前
Spring Boot 手撸一个自助报表系统
后端
donotshow19 分钟前
Spring Boot 整合 ShedLock 处理定时任务重复
java·后端
木土雨成小小测试员20 分钟前
简单创建一个flask项目
后端·python·flask
java1234_小锋32 分钟前
PyTorch2 Python深度学习 - transform预处理转换模块
开发语言·python·深度学习·pytorch2
Victor35632 分钟前
Redis(100)如何防止Redis的数据丢失?
后端
Victor35633 分钟前
Redis(101)Redis为什么是单线程的?
后端
程序员三明治1 小时前
选 Redis Stream 还是传统 MQ?队列选型全攻略(适用场景、优缺点与实践建议)
java·redis·后端·缓存·rocketmq·stream·队列