如何在Hatch项目开发中使用IPython解释器且不设为项目依赖?
在Hatch项目中本地开发专用IPython的方案
你完全可以只在本地开发时使用IPython,无需将其加入项目依赖(包括可选依赖),以下是几种实用方案:
1. 手动在Hatch虚拟环境安装IPython
Hatch默认虚拟环境为venv,先激活环境再安装IPython:
# Linux/macOS source venv/bin/activate # Windows venv\Scripts\activate pip install ipython
安装完成后,直接在激活的环境中输入ipython即可启动REPL,这种方式不会改动项目的依赖配置。
2. 让Hatch自动给开发环境安装IPython
修改pyproject.toml,给默认虚拟环境添加专属依赖,这些依赖仅在本地环境生效,不会被打包到项目发布包中:
[tool.hatch.envs.default] type = "virtual" path = "venv" dependencies = [ "ipython" ]
之后更新或重新创建环境:
# 若环境已存在,更新依赖 hatch env update default # 若环境未创建,直接创建 hatch env create default
激活环境后即可直接运行ipython。
3. 创建独立的开发专用环境(更推荐)
单独配置一个dev环境,将IPython这类开发工具集中存放,与测试、生产环境彻底隔离:
[tool.hatch.envs.dev] type = "virtual" path = "venv/dev" dependencies = [ "ipython" ]
激活该环境的命令:
hatch shell dev
进入shell后输入ipython即可使用,这种方式逻辑更清晰,避免和测试依赖混淆。
补充:为什么之前把IPython放test可选依赖里找不到?
你之前将IPython加入test可选依赖后,需要执行pip install .[test]才会安装这些依赖,且会把IPython和测试工具绑定在一起。但IPython属于个人开发工具,并非项目本身的必要依赖,上述方案更适配你的需求。
内容的提问来源于stack exchange,提问作者Naftuli Kay
相关产品推荐
相关产品推荐

