Python 虚拟环境入门:从 venv 到依赖隔离的第一课
刚开始写 Python 时,很多人会在一台电脑上装很多库:这个项目要旧版本,那个项目又要新版本,一升级,另一个项目就跑不起来了。虚拟环境就是解决办法:给每个项目一个独立的环境和依赖清单,互不干扰。
什么是虚拟环境
可以把它理解成项目专用的“工具箱”。它有自己的一份 Python 解释器和依赖目录,装在这里的库不会影响系统 Python,也不会影响其他项目。换电脑或交给同事时,按清单重新安装,就能尽量复现同样的运行环境。
用 venv 创建第一个环境
Python 3.3 之后自带 venv,不需要额外安装。先进入项目目录,再执行 python -m venv .venv。这里 .venv 是环境目录的名字,习惯上也常用 venv。创建完成后,里面会出现 bin 或 Scripts、lib、pyvenv.cfg 等文件,不要把这个目录提交到代码仓库。
激活与退出
创建只是第一步,激活后终端才会真正使用这个环境。macOS 或 Linux 上执行 source .venv/bin/activate;Windows 命令提示符里执行 .venv\Scripts\activate.bat;PowerShell 里执行 .venv\Scripts\Activate.ps1。激活成功后,命令行前面通常会出现 (.venv) 提示,执行 deactivate 即可退出。换了终端窗口要重新激活。
在这个环境里装包
激活后,用 pip 安装的包只会进入当前环境。执行 pip install requests,再执行 pip freeze > requirements.txt,第二句就是把版本固定成清单。以后在新环境里执行 pip install -r requirements.txt,就能按清单安装。不要只说“装了 requests”,要说“装了哪个版本”,否则别人很容易装到不兼容的新版。
哪些文件应该提交
建议提交的是代码、requirements.txt 和说明文档;不建议提交的是 .venv 目录本身。可以在项目根目录新建 .gitignore 并写入 .venv/,这样环境就不会被误提交。虚拟环境是可以随时重建的“工作现场”,而不是项目成果本身。
小结
虚拟环境不是为了显得专业,而是为了让项目可重复、可交接。记住三句话:创建用 python -m venv .venv,激活后再装包,装完用 pip freeze 留下清单。每个新项目都先建环境再写代码,依赖冲突会少很多。
- 点赞
- 收藏
- 关注作者
评论(0)