Python 虚拟环境 venv 新手入门:隔离依赖的三步用法
刚学 Python 的新手常会遇到一个问题:跟着两篇教程装了几个库,版本一冲突,旧项目就跑不起来了。问题往往不在代码,而在所有依赖都装进了同一个全局环境。Python 自带的 venv 模块就是为了解决这件事:给每个项目一个独立的“小房间”,互不干扰。
为什么需要虚拟环境
全局安装的包是所有项目共用的。A 项目要 requests 2.28,B 项目要 requests 2.32,装一个就会覆盖另一个。虚拟环境让每个项目拥有自己的解释器副本和 site-packages,装什么、装什么版本,都只影响当前项目。出了问题,删掉环境重建即可,系统 Python 本身不受影响。
第一步:创建环境
在项目目录下执行:
python -m venv .venv
这会在当前目录生成 .venv 文件夹,里面是一份独立的 Python 副本和 pip。不需要联网,也不用装第三方工具,Python 3.3 之后自带这个功能。
第二步:激活环境
Windows(PowerShell):.venv\Scripts\Activate.ps1
macOS / Linux:source .venv/bin/activate
激活后命令行前面会出现 (.venv) 标记。之后用 pip install 装的包都会进这个环境,python 用的也是环境内的解释器。
第三步:记录与还原依赖
装好依赖后,把清单写出来:
pip freeze > requirements.txt
换一台电脑,或者重建环境时,一条命令还原:
pip install -r requirements.txt
再配合在 .gitignore 里加一行 .venv/,环境本身不用进版本库。
三个新手常见坑
1. 忘了激活:直接 pip install,结果包还是进了全局环境。装包前先看命令行前面有没有 (.venv)。
2. 选错了解释器:在编辑器里确认用的是 .venv 里那个 Python,否则运行和安装会跑到两个地方。
3. 把 .venv 发给别人:环境里有绝对路径,挪位置就失效。正确做法是分享 requirements.txt,让对方自己创建环境。
虚拟环境不是什么高深技术,它就是一个好习惯:一个项目一个环境,依赖清单随代码走。从今天开始,每个新项目先 python -m venv .venv,再写第一行代码。
- 点赞
- 收藏
- 关注作者
评论(0)