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

VSCode环境下Python导入函数遇ModuleNotFoundError问题求助

Python模块导入问题排查与解决

问题根源

直接运行working_script.py时,Python默认将脚本所在的workingfolder/目录加入模块搜索路径sys.path,而非项目根目录my_project/,因此无法定位到subfolder模块。

可行解决方案

1. 手动添加项目根目录到搜索路径(临时应急)

在working_script.py的最开头加入以下代码,强制把项目根目录加入Python的模块搜索路径:

import sys
import os
# 向上回溯一级,获取my_project目录的绝对路径
project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
sys.path.append(project_root)

# 之后即可正常导入
from subfolder.helper_functions import my_function

2. 以项目根目录为工作目录运行脚本(推荐)

在VSCode中按以下操作设置:

  • 打开项目时选择my_project/作为工作区根目录
  • 运行脚本前,确保终端的工作目录是my_project/,然后执行:
python workingfolder/working_script.py

或者修改VSCode的运行配置文件(.vscode/launch.json),指定工作目录为项目根:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "cwd": "${workspaceFolder}"
        }
    ]
}

3. 使用相对导入(包模式运行)

将my_project视为一个Python包,在working_script.py中使用相对导入语法:

from ..subfolder.helper_functions import my_function

注意:这种方式不能直接运行working_script.py,必须从my_project目录外部,以包的方式启动:

python -m my_project.workingfolder.working_script

内容的提问来源于stack exchange,提问作者Tuva Løfgren

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 21:32:04