You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python自定义look_up模块执行develop安装后导入失败求助

排查Python模块导入失败的问题

看起来你遇到的核心问题是Python模块命名规范冲突,再结合几个配置细节,导致安装后无法正常导入模块。咱们一步步来定位修复:

1. 包目录名称违反Python规范

Python的模块/包名称不允许包含连字符(-),你的项目里子包目录叫look-up,这本身就会导致Python无法识别它为合法模块——这是最关键的问题。

修复:重命名包目录

把根目录下的子目录look-up改成look_up(将连字符替换为下划线),修改后的项目结构应该是:

look-up/
├── look_up/
│   ├── utilities/
│   │   ├── __init__.py
│   │   ├── validator.py
│   └── __init__.py
├── README.md
├── requirements.txt
├── setup.py
└── MANIFEST.in

2. 优化setup.py配置(可选但更稳妥)

你的setup.py基础配置没问题,但可以显式指定要包含的包,避免find_packages()漏检子模块。修改后的setup.py可以是:

from setuptools import setup, find_packages
from codecs import open
from os import path

here = path.abspath(path.dirname(__file__))

with open(path.join(here, 'README.md'), encoding='utf-8') as f:
    long_description = f.read()

setup(
    name='look_up',
    version='0.0.1',
    packages=find_packages(include=['look_up', 'look_up.*']),  # 显式包含主包和所有子包
    long_description=long_description,
    long_description_content_type='text/markdown'  # 让安装工具识别README格式,更规范
)

3. 重新执行可编辑安装

先清理之前的安装残留,再重新安装:

# 清理旧的安装残留文件
python setup.py clean --all
# 推荐用官方现代的可编辑安装方式(替代setup.py develop)
pip install -e .

如果你习惯用setup.py develop,执行python setup.py develop也可以,但pip install -e .是当前官方推荐的标准方式。

4. 额外检查点

  • 确保你是在项目根目录(包含setup.py的那个look-up文件夹)下执行安装命令,否则find_packages()找不到你的包。
  • 如果你用了虚拟环境,确认已经激活了对应的环境,避免模块安装到全局Python或者其他不相关的环境中。
  • 检查所有__init__.py文件是否存在且无语法错误,你的结构里已经包含了,这部分应该没问题。

完成以上步骤后,打开Python交互环境测试导入:

import look_up
from look_up.utilities import validator

应该就能正常导入了。

内容的提问来源于stack exchange,提问作者Fabian Hafner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 04:21:43