← Backend / Python / 基础专题

17_虚拟环境依赖与包管理

隔离项目依赖,分清解释器、标准库与第三方包。

Python 基础专题 17:虚拟环境、依赖与包管理

学习目标:隔离项目依赖,分清解释器、标准库与第三方包。

核心知识

虚拟环境为项目提供独立的 Python 可执行文件与第三方包目录。项目根目录执行 python3 -m venv .venv;macOS/Linux 可用 source .venv/bin/activate 激活,Windows PowerShell 使用 .venv\Scripts\Activate.ps1。激活只是方便命令查找,也可以直接调用 .venv/bin/python。

python3 -m venv .venv
source .venv/bin/activate
python -m pip --version
python -m pip install requests
python -m pip show requests

python -m pip 可确保安装到当前解释器环境。import json 是标准库,无须另行安装;requests 是第三方包,安装后才可导入。部署时应记录 Python 版本和依赖版本,requirements.txt 或 pyproject.toml 是常见形式。只记录“最新版”无法保证重复安装得到相同结果。

.venv 通常不提交到版本库;依赖清单应提交。对不可信项目执行安装脚本前,先查看项目文档与依赖。学习时遇到 ModuleNotFoundError,先检查运行脚本和安装包使用的是否同一个 Python。

逐步理解

激活虚拟环境后运行 python -c "import sys; print(sys.executable)",确认当前解释器路径。安装包时始终优先用 python -m pip,避免 pip 命令意外指向系统环境。若项目需要多人协作,记录可复现的依赖版本,并在全新环境从依赖清单安装一次,检验清单是否完整。

动手练习

练习:创建虚拟环境,查看 python -m pip --version 的路径,再退出环境。核对:激活时路径应指向项目的 .venv。