---
title: "虚拟环境 (venv)"
type: concept
tags: [python, 环境配置]
---

## 定义
Python 虚拟环境（Virtual Environment）是一种依赖隔离机制，通过 `python3 -m venv venv` 命令创建独立的 Python 运行环境，使每个项目拥有独立的依赖包，避免全局污染和版本冲突。

## 核心特性
- 依赖隔离：每个项目可安装不同版本的同一包
- 环境激活：`source venv/bin/activate` 激活环境
- 可移植性：通过 `pip freeze > requirements.txt` 导出依赖列表
- 轻量级：基于 Python 标准库实现，无需额外安装

## 使用场景
- Docker 容器内运行 Python 应用
- 多项目共存且依赖版本不同
- 隔离系统 Python 环境，避免全局污染

## 相关工具
- [[venv]]：Python 3.3+ 内置模块
- [[virtualenv]]：第三方虚拟环境工具，功能更丰富
- [[pipenv]]：结合 pip 和 venv 的依赖管理工具
- [[poetry]]：现代化的 Python 依赖管理工具

## 关联概念
- [[Docker]]：容器化部署环境，venv 常用于隔离容器内 Python 依赖
- [[Scrapy]]：Python 爬虫框架，可在 venv 中运行
- [[Playwright]]：浏览器自动化工具，可在 venv 中运行