使用 pip 和 venv 在虚拟环境中安装软件包

大家好,我是前端开发,最进在使用Python开发。这里记录一下Python虚拟环境和Pip的使用指南.

本指南原文Install packages in a virtual environment using pip and venv

本指南讨论如何使用标准库的虚拟环境工具venv创建和激活虚拟环境并安装包。

  • 创建并激活虚拟环境
  • 使用pip命令将软件包安装到虚拟环境中
  • 使用并创建requirements.txt

本指南适用于受支持的 Python 版本,目前为 3.8 及更高版本。

创建虚拟环境

venv (适用于 Python 3)允许您管理不同项目的单独包安装。它创建了一个"虚拟"隔离的 Python 安装。当您切换项目时,您可以创建一个与其他虚拟环境隔离的新虚拟环境。您可以从虚拟环境中受益,因为可以放心地安装软件包并且不会干扰其他项目的环境。

!Tip

建议在使用第三方软件包时使用虚拟环境。

要创建虚拟环境,请转到项目目录并运行以下命令。这将在名为.venv的本地文件夹中创建一个新的虚拟环境:

Linux/MacOS

shell 复制代码
python3 -m venv .venv

Windows

shell 复制代码
py -m venv .venv

第二个参数是创建虚拟环境的位置。一般来说,您可以在项目中创建它并命名为.venv

venv将在.venv文件夹中创建虚拟 Python 安装。

!Tip

您应该使用.gitignore或类似文件从版本控制系统中排除虚拟环境目录。

激活虚拟环境

在开始在虚拟环境中安装或使用软件包之前,您需要activate它。激活虚拟环境会将虚拟环境特定的pythonpip可执行文件放入 shell 的PATH中。

Linux/MacOS

shell 复制代码
source .venv/bin/activate

Windows

shell 复制代码
.venv\Scripts\activate

要确认虚拟环境已激活,请检查 Python 解释器的位置:

Linux/MacOS

shell 复制代码
which python

Windows

shell 复制代码
where python

当虚拟环境处于活动状态时,上述命令将输出包含.venv目录的文件路径,并以以下内容结尾:

python 复制代码
#Linux/MacOS
.venv/bin/python
#Windows 
.venv\Scripts\python

激活虚拟环境后,pip 会将软件包安装到该特定环境中。这使您能够在 Python 应用程序中导入和使用包。

停用虚拟环境

如果您想切换项目或离开虚拟环境, 使用deactivate命令:

shell 复制代码
deactivate

!Tip

关闭 shell 将停用虚拟环境。如果您打开一个新的 shell 窗口并想要使用虚拟环境,请重新激活它。

如果您想要重新激活现有虚拟环境,请按照激活虚拟环境的相同说明进行操作。无需创建新的虚拟环境。

Pip使用

pipPython 包管理器。它用于将软件包安装和更新到虚拟环境中。

Linux/MacOS

在 Linux 上,您可能需要安装额外的软件包,例如python3-pip 。您可以通过运行以下命令来确保 pip 是最新的:

shell 复制代码
python3 -m pip install --upgrade pip
python3 -m pip --version

之后,您应该在您的用户站点中安装最新版本的 pip:

shell 复制代码
pip 23.3.1 from .../.venv/lib/python3.9/site-packages (python 3.9)

Windows

您可以通过运行以下命令来确保 pip 是最新的:

shell 复制代码
py -m pip install --upgrade pip
py -m pip --version

之后,您应该拥有最新版本的 pip:

shell 复制代码
pip 23.3.1 from .venv\lib\site-packages (Python 3.9.4)

使用 pip 安装软件包

激活虚拟环境后,您可以安装软件包。使用pip install命令安装软件包。

安装第三方包

Linux/MacOS

shell 复制代码
python3 -m pip install requests

Windows

shell 复制代码
py -m pip install requests

指定版本

pip 允许您使用版本说明符指定要安装的软件包版本。例如,要安装特定版本的requests

Linux/MacOS

shell 复制代码
python3 -m pip install 'requests==2.18.4'

Windows

shell 复制代码
py -m pip install "requests==2.18.4"

要安装最新的2.x版本的 requests:

Linux/MacOS

shell 复制代码
python3 -m pip install 'requests>=2.0.0,<3.0.0'

Windows

shell 复制代码
py -m pip install "requests>=2.0.0,<3.0.0"

要安装软件包的预发行版本,请使用--pre标志:

Linux/MacOS

shell 复制代码
python3 -m pip install --pre requests

Window

shell 复制代码
py -m pip install --pre requests

安装包的extra功能

有些package有可选的extra。您可以通过在括号中指定额外内容来告诉 pip 安装它们:

Linux/MacOS

shell 复制代码
python3 -m pip install 'requests[security]'

Windows

shell 复制代码
py -m pip install "requests[security]"

从本地安装包

如果您有Distribution Package存档的本地副本(zip、wheel 或 tar 文件),您可以直接使用 pip 安装它:

Linux/MacOS

shell 复制代码
python3 -m pip install requests-2.18.4.tar.gz

Windows

shell 复制代码
py -m pip install --no-index --find-links=/local/dir/ requests

升级包

pip 可以使用--upgrade标志就地升级包。例如,要安装最新版本的requests及其所有依赖项:

Linux/MacOS

shell 复制代码
python3 -m pip install --upgrade requests

Windows

shell 复制代码
py -m pip install --upgrade requests

从requirements.txt文件安装

pip 允许您在需求文件中声明所有依赖项,而不是单独安装包。例如,您可以创建一个包含以下内容的requirements.txt文件:

Linux/MacOS

shell 复制代码

Windows

shell 复制代码

Linux/MacOS

shell 复制代码
python3 -m pip install -r requirements.txt

Windows

shell 复制代码
py -m pip install -r requirements.txt

生成依赖文件requirements.txt

Linux/MacOS

shell 复制代码
python3 -m pip freeze

Windows

shell 复制代码
py -m pip freeze

pip freeze命令对于创建要求文件非常有用,这些文件可以重新创建环境中安装的所有软件包的确切版本。

相关推荐
咖啡Beans几秒前
Python工具DrissionPage推荐
后端·python
Nicole-----5 分钟前
PySpark数据输入
python
扑克中的黑桃A15 分钟前
Python学习的自我理解和想法(27)
python
蓝倾9761 小时前
小红书获取用户作品列表API接口操作指南
java·服务器·前端·python·电商开放平台·开放api接口
yBmZlQzJ2 小时前
PyQt5 修改标签字体和颜色的程序
开发语言·python·qt
胖达不服输2 小时前
「日拱一码」081 机器学习——梯度增强特征选择GBFS
人工智能·python·算法·机器学习·梯度增强特征选择·gbfs
float_六七2 小时前
Java Stream流:从入门到精通
java·windows·python
星空的资源小屋2 小时前
PPTist,一个完全免费的 AI 生成 PPT 在线网站
人工智能·python·电脑·excel
程序员的世界你不懂3 小时前
【Flask】测试平台开发,工具模块开发 第二十二篇
android·python·flask
薰衣草23333 小时前
滑动窗口(2)——不定长
python·算法·leetcode