Python 虚拟环境的创建(venv)

Python虚拟环境(venv)完全指南

Python虚拟环境(venv)完全指南

小白也能懂的虚拟环境创建与管理知识大全

什么是虚拟环境?

想象一下,虚拟环境就像给你的Python项目准备的独立小房间:

✅ 每个项目有自己的”房间”,互不干扰

✅ 可以安装不同版本的包,不会冲突

✅ 复制项目到其他电脑时,依赖包不会出错

没有虚拟环境时,所有Python项目共享同一个”大客厅”,容易导致:

❌ 包版本冲突(项目A需要Django 3.0,项目B需要Django 4.0)

❌ 系统Python环境被污染

❌ 项目依赖混乱,难以迁移

为什么需要虚拟环境?

解决项目依赖冲突

不同项目可能需要同一个包的不同版本

保持系统环境干净

避免安装全局包,防止系统Python环境被污染

方便项目管理

每个项目都有独立的依赖列表,容易复制环境

简化部署流程

轻松生成requirements.txt文件,一键安装所有依赖

💡 小技巧

每个项目都应该有自己的虚拟环境,就像每个项目有自己的文件夹一样

如何创建虚拟环境?

基本创建命令

# 创建名为”myenv”的虚拟环境
python -m venv myenv

指定Python版本

# 使用特定Python版本创建环境
python3.9 -m venv myenv

创建环境后的目录结构

myenv/
├── bin/ # 激活脚本(Linux/Mac)
├── Scripts/ # 激活脚本(Windows)
├── include/
├── lib/ # 安装的包存储在这里
└── pyvenv.cfg # 环境配置文件
⚠️ 注意

创建环境后,还需要激活才能使用!

激活虚拟环境

Windows系统

# 进入Scripts目录
cd myenv\Scripts

# 执行激活命令
activate

Linux/Mac系统

# 进入bin目录
cd myenv/bin

# 执行激活命令
source activate

激活成功提示

命令提示符前会显示环境名称:

(myenv) C:\Users\YourName\project>

激活后,所有Python操作只会影响当前虚拟环境

使用pip安装的包会存放在虚拟环境的lib目录中

使用虚拟环境

安装包

# 在激活的环境中安装包
(myenv) pip install pandas numpy

查看已安装包

# 列出当前环境所有包
(myenv) pip list

生成依赖文件

# 生成requirements.txt文件
(myenv) pip freeze > requirements.txt

根据依赖文件安装

# 在新环境中一键安装所有依赖
(myenv) pip install -r requirements.txt
📝 最佳实践

将requirements.txt文件加入版本控制(Git),方便团队协作

退出和删除环境

退出虚拟环境

# 任何系统都可以使用这个命令
deactivate

删除虚拟环境

虚拟环境就是一个普通文件夹,直接删除即可:

# Windows
rmdir /s /q myenv

# Linux/Mac
rm -rf myenv

环境复用

不需要删除环境,可以:

1. 保留环境下次继续使用

2. 复制整个环境文件夹到新位置

3. 使用requirements.txt重建环境

虚拟环境不包含项目代码,只包含Python和安装的包

虚拟环境 vs 系统环境 示意图

系统环境

全局安装的Python解释器

Python 3.9
Django 4.0
numpy 1.21
pandas 1.3
requests 2.26
项目A环境

my_project_A_venv

Python 3.9
Django 3.2
numpy 1.19
项目B环境

my_project_B_venv

Python 3.9
Flask 2.0
pandas 1.4
requests 2.28
bash – 完整工作流程演示
$ # 1. 创建项目目录
$ mkdir my_awesome_project
$ cd my_awesome_project

$ # 2. 创建虚拟环境
$ python -m venv venv

$ # 3. 激活虚拟环境 (Linux/Mac)
$ source venv/bin/activate
(venv) $ # 注意提示符变化

(venv) $ # 4. 安装项目依赖包
(venv) $ pip install django pandas

(venv) $ # 5. 查看已安装包
(venv) $ pip list
Package Version
————— ——-
Django 4.0.6
pandas 1.4.3
pip 22.0.4

(venv) $ # 6. 生成依赖文件
(venv) $ pip freeze > requirements.txt

(venv) $ # 7. 退出虚拟环境
(venv) $ deactivate
$ # 提示符恢复原样

Python虚拟环境(venv)初学者指南 | 编程学习之路的重要一步

记住:每个Python项目都应该生活在自己独立的空间中!

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部