Python中很多项目中见到的【pip install -e .】 到底是什么意思?一文详解~
其实这是一个非常经典的 Python 开发者常用命令。
简单来说,pip install -e . 的意思是:以“可编辑模式”安装当前目录下的 Python 包。
可以把它拆解开来看:
1. 拆解命令
-
pip install: 标准的安装指令。 -
-e: 这是核心。全称是--editable(可编辑)。 -
.: 代表 “当前目录”。意味着 pip 会去当前文件夹里找setup.py或pyproject.toml文件来安装。
2. 它和普通安装有啥区别?(核心重点)
为了让你秒懂,我们可以用 “复制粘贴” vs “创建快捷方式” 来做比喻。
🅰️ 普通安装 (pip install .) —— 相当于“复制粘贴”
当你运行不带 -e 的命令时:
-
pip 会把你当前文件夹里的代码打包。
-
然后把这个包 复制 到你的 Python 系统库目录(比如
site-packages)里。 -
后果:如果你修改了当前文件夹里的代码(比如改了个 bug),系统库里的那份是不会变的。你必须重新运行安装命令,才能让修改生效。
🅱️ 可编辑安装 (pip install -e .) —— 相当于“创建快捷方式”
当你加上 -e 后:
-
pip 不会复制 你的代码文件。
-
它只是在 Python 系统库目录里放了一个 “链接”(或者叫指针/快捷方式),指向你当前的文件夹。
-
后果:你在当前文件夹里修改了任何代码,Python 解释器能立刻感知到。你不需要重新安装,再次运行程序时,它用的就是你改过的新代码。
3. 什么时候用它?
这个命令几乎是 开发者的标配。
-
场景一:你在开发自己的库
你正在写一个 Python 包(比如叫
my-awesome-tool),你需要边写边测。你肯定不希望每改一行代码就运行一次pip install .。这时就用-e .。 -
场景二:给开源项目做贡献
你把别人的开源项目下载(Clone)下来,想修复一个 bug。你需要安装这个项目才能运行测试代码,但你又需要频繁修改源码调试。这时必须用
-e .。 -
场景三:调试复杂的项目
有些项目结构很深,你需要把它当作一个包安装后才能理清
import关系,但你又需要随时修改它。
4. 总结
| 命令 | 动作 | 代码生效方式 | 适用人群 |
pip install . |
复制文件到库目录 | 修改源码后,必须重装才生效 | 最终用户/部署生产环境 |
pip install -e . |
创建链接指向当前目录 | 修改源码后,立即生效 | 开发者/贡献者 |
一句话总结:
如果你是来改代码的,请用 pip install -e .;如果你只是来用的,请用 pip install .。

浙公网安备 33010602011771号