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

从外部目录调用模块时,同目录模块导入提示ModuleNotFoundError

解决Python模块导入错误的几种方法

针对你遇到的问题,有以下几种可行的解决方式:

方法一:使用相对导入

修改module1.py中的导入语句为:

from . import module2

这里的.代表当前模块所在的目录(也就是modules目录),Python会从这个目录下查找module2,不管是直接运行module1.py还是通过main.py导入,都能正确找到模块。

方法二:使用绝对导入

修改module1.py中的导入语句为:

from modules import module2

这种方式明确指定了从根目录下的modules包导入module2,运行main.py时根目录已经在Python的模块搜索路径sys.path中,因此能正确定位到模块。

方法三:手动添加模块搜索路径

在module1.py的开头添加以下代码,把当前模块所在的目录加入到Python的搜索路径中:

import sys
import os

# 获取当前文件所在目录的绝对路径
current_dir = os.path.dirname(os.path.abspath(__file__))
# 将该目录添加到sys.path
sys.path.append(current_dir)

import module2

这样Python在查找module2时,会优先搜索我们添加的目录,自然就能找到同目录下的module2了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 06:27:17