Python 新手入门:先学会用虚拟环境管好依赖
刚学 Python 时,很多人都会直接在系统环境里装包。开始很省事,时间一长就容易出问题:A 项目要 requests 2.x,B 项目却要 3.x;换一台电脑又得重新回忆装过什么;甚至一不小心升级了某个包,正在跑的脚本就报错了。虚拟环境就是为了解决这些麻烦,它给每个项目单独准备一套 Python 解释器和依赖,互不干扰。
一句话理解虚拟环境
可以把虚拟环境想象成项目专属的工具箱。系统 Python 是公共工具间,所有项目共用;虚拟环境则是在项目目录旁边单独开一个小房间,里面放着这个项目自己的 pip 和第三方库。激活它之后,python 和 pip 指的都是这个房间里的版本;退出之后,一切恢复原样,系统环境不会被污染。
动手做一次
在项目文件夹里执行:
python -m venv .venv
这会在当前目录生成 .venv 文件夹,里面包含解释器和基础工具。接下来激活它。Windows 上是:
.venv\Scripts\activate
macOS 和 Linux 上是:
source .venv/bin/activate
成功后命令行前面会出现 (.venv),表示你已经进入这个环境。此时再安装依赖,例如:
pip install requests
它只会装进 .venv,不会影响系统 Python。工作结束时输入 deactivate 就能退出。
把依赖固定下来
只靠口头记住装过什么是靠不住的。项目稳定后,用下面命令生成依赖清单:
pip freeze > requirements.txt
新环境或新电脑上,只要创建并激活虚拟环境,再执行 pip install -r requirements.txt,就能基本复现同一套依赖。这也是团队协作和部署时最常见的交接方式。记得把 .venv 目录加入 .gitignore,只提交代码和 requirements.txt,不要把整个环境传进仓库。
新手最容易踩的几个坑
第一,创建之后忘记激活,直接在全局装包,结果换个终端又找不到包。第二,在不同终端窗口里混用环境,一个窗口激活了,另一个没有,报错信息看起来莫名其妙。第三,升级 pip 或某个核心库前没有先确认项目是否兼容,导致旧代码突然跑不起来。第四,把项目文件夹整个复制给别人时连 .venv 一起复制,既臃肿又可能因为路径和系统不同而失效。正确做法是只传代码和依赖清单,对方重新创建环境。
虚拟环境和 conda 怎么选
如果只是做纯 Python 项目,标准库自带的 venv 已经够用,轻量、无需额外安装,也最容易讲清楚原理。如果项目涉及科学计算、不同版本的 Python 解释器管理,或者需要同时管理非 Python 的系统依赖,conda、uv 这类工具会更方便。入门阶段建议先把 venv 用熟:创建、激活、安装、冻结、退出这一套流程跑通,再去学其他工具,理解起来会快很多。
一个好的开始习惯
每新建一个 Python 项目,先做三件事:创建虚拟环境、激活它、写好 requirements.txt。项目小的时候这几步看起来多余,可一旦项目变大、依赖变多、需要换电脑或和别人协作,它们就会成倍地省时间。养成这个习惯,之后再学 Docker、包管理或部署工具,也会更容易理解“环境隔离”这个核心思想。
- 点赞
- 收藏
- 关注作者
评论(0)