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

pip安装私有Python包后无法导入Class1类,求排查原因

解决方法

1. 检查包的安装结构与配置

你的包目前根目录是python_package,pip安装后,utils是python_package的子包而非顶层包,因此默认只能通过from python_package.utils import Class1导入。

如果想直接用from utils import Class1,可以调整以下任意一项:

  • 调整目录结构:把utils目录移到项目根目录(和setup.py/pyproject.toml同级),不再嵌套在python_package文件夹内。
  • 修改打包配置:在setup.py(或pyproject.toml)中明确指定packages=['utils'],同时确保utils目录和配置文件处于同一层级。

2. 优化__init__.py的导入方式

虽然from .module1 import *理论上能导入Class1,但推荐更明确的写法避免潜在问题:

# utils/__init__.py
from .module1 import Class1
from .module2 import *  # 也可以明确列出module2中需要导出的成员

如果坚持使用import *,可以在module1.py中添加__all__列表明确导出成员:

# utils/module1.py
__all__ = ['Class1']

class Class1:
    # 类实现代码

3. 验证安装正确性

重新打包安装后,在Python环境中执行以下命令验证:

import utils
print(dir(utils))

若输出结果包含Class1,说明导入配置正常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 14:48:17