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

Python本地自定义模块导入失败求助:Jupyter Notebook同目录报错

解决Jupyter Notebook导入同目录自定义模块的常见问题

嘿,这种导入模块的坑我刚学Python时也踩过好几次!结合你的情况,咱们一步步排查:

1. 先排查模块命名与格式问题

  • 别给模块起和Python内置模块重名的名字!比如math.py、sys.py这种绝对不行,会直接覆盖内置模块导致导入混乱;
  • 文件名里别带空格、中文或者特殊符号,比如我的模块.py改成my_module.py才合规;
  • 确认文件后缀是.py,不是.txt或者其他格式——Jupyter只认.py的Python模块文件。

2. 确认Jupyter的工作目录是否真的和模块一致

这是最容易忽略的点!Jupyter的工作目录不一定是你打开Notebook文件的目录,先运行这段代码看看当前路径:

import os
print(os.getcwd())

如果输出的路径和你的模块、Notebook文件所在目录不一样,那问题就找到了:

  • 最简单的解决办法:把Notebook文件移到模块所在目录,或者反过来;
  • 不想移动文件的话,手动把模块目录添加到Python搜索路径:
import sys
sys.path.append("你模块所在的绝对路径")

比如模块在/Users/xxx/PythonProjects,就把这个路径填进去。

3. 检查模块本身的语法错误

有时候不是导入的问题,是模块代码写错了!你可以:

  • 直接在Jupyter里复制模块的代码运行一遍,看有没有报错;
  • 或者打开终端,执行python 你的模块名.py,如果有语法错误,终端会直接告诉你哪里出问题,先把模块的bug修好再导入。

4. 清理缓存文件的干扰

如果之前导入过模块又修改了内容,Jupyter可能还在使用旧的缓存版本:

  • 重启Jupyter内核(点击顶部菜单栏的「Kernel」→「Restart」);
  • 删除模块所在目录下的__pycache__文件夹(这是自动生成的缓存,删了会自动重建,不用担心)。

5. 确认导入语句的正确性

比如你的模块叫my_module.py,导入时要写:

import my_module
# 或者按需导入
from my_module import 你的函数名/类名

千万不要加.py后缀,Python会自动识别模块文件的。

要是做完这些还是报错,把具体的错误信息贴出来,我能帮你更快定位问题~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 07:29:34