Python 虚拟环境入门:给每个项目一个干净的依赖空间
很多 Python 新手都遇到过这样的场景:A 项目要旧版库,B 项目要新版库,全装进系统 Python 里,版本一冲突,两个项目都跑不起来。更麻烦的是,过一段时间再回头看,根本记不清当初装了哪些东西。虚拟环境就是解决这个问题的最常用办法:给每个项目一个独立的依赖空间,互不干扰。
是虚拟环境
虚拟环境可以理一份 Python 的副本加上独立的包目录。你在里面装什么、升级什么,都只影响当前项目,不会动系统 Python,也不会影响别的项目。换项目时退出当前环境、进入另一个环境,依赖就切换过去了。Python 自带的 venv 模块就能做这件事,不需要额外装工具。
创建和进入
在项下,用一条命令创建环境,名字通常叫 venv 或者 .venv,习惯保持一致,方便以后找。创建完成后激活它:Windows 上是执行 Scripts 下的 activate,macOS 和 Linux 上是 source bin/activate。激活成功后,命令行前面会多一个环境名,这就是判断是否在环境里的最直观标志。在环境里装包和记录依赖
激境后再用 pip 装包,这些包只会进当前环境。项目跑通之后,把依赖写进 requirements.txt,以后在新机器上先创建并激活环境,再按这个文件装一遍,就能还原出差不多的依赖组合。反过来,不激活环境就 pip install,很容易装到系统 Python 里,这也是新手最常见的坑。退出和常见坑
用完用 detivate 退出,命令行前面的环境名消失,就回到了系统环境。还有几个习惯值得养成:环境目录本身不用进版本库,提交代码时只提交 requirements.txt 和代码;换电脑、换系统时不要直接复制环境目录,重新创建更稳;遇到版本冲突,先看报错里到底是哪个包在抢版本,再决定是放宽还是固定版本,不要一股脑全升到最新。
结语
虚拟环境不是什么高级,就是一个很实在的项目卫生习惯:一个项目一个环境,依赖写清楚,换环境不心疼。养成这个习惯后,项目多了也不乱,别人接手你的项目也能一步还原。技巧
ac活环目根目录解为什么
- 点赞
- 收藏
- 关注作者
评论(0)