VS Code中运行与调试运行用不同解释器?调试正常运行缺模块
核心原因
调试模式和常规运行(比如依赖Code Runner插件)使用的Python解释器不一致,导致常规运行时无法找到虚拟环境中安装的模块。
具体排查与解决步骤
检查Code Runner插件的执行路径
如果你用Code Runner插件执行「常规运行代码」,它默认可能调用系统主Python,而非你在网络驱动器创建的虚拟环境解释器。需要修改配置:
打开settings.json(按Ctrl+Shift+P输入Preferences: Open Settings (JSON)),添加或修改:"code-runner.executorMap.python": "你的网络虚拟环境路径/python.exe"比如虚拟环境在
Z:/my_conda_env,就写"Z:/my_conda_env/python.exe"。更新VS Code的默认解释器设置
旧版的python.pythonPath已被废弃,现在VS Code用python.defaultInterpreterPath指定默认解释器。按Ctrl+Shift+P输入Python: Select Interpreter,选择你在网络驱动器的虚拟环境,这会自动更新settings.json里的python.defaultInterpreterPath,确保所有Python相关操作默认使用该解释器。确保终端自动激活虚拟环境
若常规运行是通过终端执行脚本,可能未自动激活虚拟环境。在settings.json里添加:"python.terminal.activateEnvironment": true这样每次打开终端都会自动激活你选中的虚拟环境。
验证解释器一致性
在Python脚本开头添加两行代码:import sys print("当前使用的Python解释器路径:", sys.executable)分别用调试模式和常规运行执行,对比输出路径。若路径不同,说明常规运行用了错误的解释器,按上述步骤修正即可。
内容的提问来源于stack exchange,提问作者rt4me

