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

Jupyter调用同目录config.py出现Config属性缺失错误求助

解决Jupyter中AttributeError: module 'config' has no attribute 'Config'的问题

我来帮你一步步排查这个导入异常的问题,这在Jupyter环境里是很常见的坑,下面是最可能的原因和对应的解决方法:

1. 先确认Jupyter的工作目录是否和文件目录一致

这是最容易踩的坑!Jupyter的默认工作路径可能不是你存放config.py和Notebook的目录。你可以先在Notebook里运行这段代码查看当前工作路径:

import os
print(os.getcwd())

如果输出的路径和你的文件所在目录不一致,那肯定找不到config.py里的类。解决办法:

  • 关闭当前Jupyter会话,打开终端cd到你的文件所在目录,再运行jupyter notebook启动
  • 或者在Notebook里直接切换工作目录(替换成你的文件绝对路径):
import os
os.chdir("/Users/xxx/your-folder-path")

2. 排查重名冲突问题

看看你的目录里有没有其他叫config.py的文件?或者有没有名为config的文件夹(里面带__init__.py的那种)?Python会优先导入这些同名的模块/包,导致你自己写的config.py没被加载。

解决办法:

  • 临时把你的config.py改个名字,比如my_config.py,然后在Notebook里改成import my_config as config试试,如果能正常导入,就说明是重名冲突的问题。

3. 清理Python缓存文件

Python会生成.pyc缓存文件和__pycache__目录,有时候旧的缓存会导致导入异常。你可以:

  • 删除目录下的__pycache__文件夹
  • 删除config.cpython-xxx.pyc这类后缀的缓存文件
  • 重启Jupyter后再重新运行代码

4. 检查config.py本身是否有加载异常

看你提供的config.py代码,Config类是全局定义的,但要注意它的__init__方法里加载了./release/Base.so动态库。如果这个文件不存在、路径不对,或者加载失败,会导致整个模块导入时出错,Config类也就无法被正常定义。

你可以先在终端里测试导入,排除模块本身的问题:

python -c "import config; print(config.Config)"

如果这里也报错,那你需要先解决动态库加载的问题:

  • 确认Base.so文件存在于./release/路径下(或者改成绝对路径)
  • 检查动态库是否兼容当前系统和Python版本

5. 确认Jupyter内核和你的Python环境一致

有时候Jupyter用的Python内核和你终端里的Python不是同一个环境,导致模块搜索路径不一样。你可以在Notebook里运行这段代码查看内核的Python路径:

import sys
print(sys.executable)

再和终端里which python(Linux/macOS)或where python(Windows)的输出对比,如果不一样,说明环境不匹配。解决办法:

  • 切换到正确的Python环境,重新启动Jupyter
  • 或者在目标环境里安装Jupyter内核:ipython kernel install --user --name=你的环境名称,然后在Notebook的内核选项里切换到这个内核

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 14:52:40