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

VS Code本地运行PySpark代码报No Module Found错误求助

问题核心原因

你遇到的ModuleNotFoundError: No module named 'model'报错和Spark配置无关,是Python模块搜索路径的问题:PyCharm默认会自动把项目根目录加入PYTHONPATH,而VS Code默认不会,同时你的启动配置还有路径、解释器选择的问题。

可尝试的解决步骤

  • 修正launch.json启动配置
    1. 你当前配置的"cwd": "${fileDirname}"会把工作目录设为当前脚本所在的scripts文件夹,如果你要导入的model模块在项目根目录下,自然无法被搜索到,把该项修改为"cwd": "${workspaceFolder}",固定工作目录为项目根目录。
    2. 移除错误放在launch配置中的terminal.integrated.env.osx项,这是VS Code全局终端配置,写在启动配置里不会生效,所有环境变量统一放在env字段下。
    3. 在env字段中添加PYTHONPATH配置,显式把项目根目录加入Python模块搜索路径,修改后的env参考如下:
    "env": {
        "PYTHONUNBUFFERED": "1",
        "APP_NAME": "Local Script",
        "LOGFILE": "output.log",
        "SPARK_HOME": "/usr/local/spark-3.1.2-bin-hadoop3.2",
        "JAVA_HOME": "/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/",
        "PYTHONPATH": "${workspaceFolder}"
    }
    
  • 确认Python解释器选择正确
    从报错栈可以看到当前运行用的是Xcode自带的系统Python:/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.8/bin/python,不是你配置的virtualenv解释器。点击VS Code窗口右下角的Python版本号,在弹出的列表中选择你对应项目的virtualenv解释器即可。
  • 验证模块路径配置
    如果修改后还是报错,可以在你的sql_query.py开头加入以下调试代码,确认运行时的解释器和搜索路径是否符合预期:
    import sys
    print("当前使用的Python解释器路径:", sys.executable)
    print("Python模块搜索路径:", sys.path)
    
    运行后检查输出的解释器路径是否为你的virtualenv路径,sys.path中是否包含项目根目录。
  • 检查模块结构
    确认你的model模块所在目录下存在__init__.py文件(Python3.3+的隐式命名空间包可省略,但如果是老版本项目建议保留,避免兼容性问题)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 21:39:04