# ModuleNotFoundError：没有名为 'mypkg' 的模块  # 在 pip install -e . 成功后

- **ID:** `python/pip-editable-install-missing-pth`
- **领域:** python
- **类别:** module_error
- **验证级别:** ai_generated
- **修复率:** 80%

## 根因

可编辑安装创建了一个 __editable__*.pth 文件，指向不再存在的路径（项目被移动、包目录被重命名），或因为 site-packages 不在 sys.path 上而未加载该 .pth。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| 3.x | active | — | — |

## 解决方案

1. **** (95% 成功率)
   ```
   python -m pip uninstall -y mypkg
cd /current/path/to/project
python -m pip install -e .
   ```
2. **** (88% 成功率)
   ```
   python - <<'PY'
import site, pathlib
for sp in site.getsitepackages():
    for pth in pathlib.Path(sp).glob('__editable__*mypkg*.pth'):
        print(pth, '->', pth.read_text().strip())
PY
# then remove stale entries and reinstall
   ```

## 无效尝试

- **** — If the project was moved, pip regenerates the same stale path or a duplicate .pth. (70% 失败率)
- **** — Hardcodes a machine-specific path and does not fix the broken editable metadata. (75% 失败率)
