Skip to main content

Python 虚拟环境配置

虚拟环境(venv)是 Python 提供的一种用于隔离项目依赖的机制。它可以避免全局包冲突,确保项目的依赖版本一致性,特别适合多人协作与部署场景。


✅ 虚拟环境的优点

  • 每个项目使用独立依赖版本,避免冲突
  • 便于部署(如部署到 Docker、虚拟机等)
  • 有助于构建可复现的环境(配合 requirements.txt
tip

建议所有 Python 项目都使用虚拟环境进行管理。


⚙️ 初始化一个虚拟环境

python3 -m venv venv

该命令将在当前目录下创建名为 venv/ 的文件夹,包含独立的 Python 解释器和 pip 工具。


🚀 启动与退出虚拟环境

source venv/bin/activate     # 启动虚拟环境
deactivate # 退出虚拟环境

📦 安装依赖并导出

pip install requests flask
pip freeze > requirements.txt

你可以通过 requirements.txt 快速还原依赖:

pip install -r requirements.txt

🧹 .gitignore 中忽略虚拟环境

# 忽略虚拟环境目录
venv/
caution

不要将 venv 目录上传到 Git 仓库,使用 requirements.txt 记录依赖即可。


🔁 同一服务部署多个 Python 项目(不同版本)

使用多个虚拟环境隔离多个项目
# 项目1(Python 3.8)
/app1/
├── venv38/
└── main.py

# 项目2(Python 3.11)
/app2/
├── venv311/
└── server.py

可以通过设置 alias 或脚本独立启动不同项目:

cd app1 && source venv38/bin/activate && python main.py

或者使用 systemd 配置多个服务分别加载对应虚拟环境。


🔎 快速判断是否处于虚拟环境中

import sys
print(sys.prefix)

若输出路径包含 venv,说明当前位于虚拟环境中。


✅ 总结

  • 使用 python -m venv venv 创建虚拟环境
  • 使用 sourceactivate 激活环境,deactivate 退出
  • .gitignore 忽略虚拟环境目录,仅保留 requirements.txt
  • 可同时部署多个 Python 版本项目,通过 venv 隔离执行

📚 推荐资源