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

VSCode调试Django应用未运行在virtualenv虚拟环境中该如何解决?

VSCode调试Django不加载virtualenv虚拟环境问题修复方案

你观察到的解释器路径指向pyenv版本而非虚拟环境Python,就是问题的核心根源。当前调试时加载的是全局Homebrew安装的3.9.7版本Python,既没有用到你设置的pyenv local 3.6.9,也没有加载virtualenv的依赖环境,可按照以下步骤修复:

  • 移除旧版废弃配置:删除VSCode settings.json 中的"python.pythonPath"配置项,该参数已被新版Python插件弃用,会干扰解释器优先级判断
  • 校验虚拟环境版本有效性:进入项目目录,运行source env/bin/activate激活虚拟环境后执行python --version,如果输出不是3.6.9,删除现有env文件夹,用pyenv管理的3.6.9版本重新创建虚拟环境:
/Users/username/.pyenv/versions/3.6.9/bin/python -m venv env
  • 手动指定VSCode项目解释器:按Command+Shift+P调出命令面板,输入Python: Select Interpreter,在列表中选中路径为/Users/username/documents/programmering/bq/env/bin/python3的虚拟环境解释器,不要选择带pyenv/versions前缀的全局3.6.9版本
  • 修正launch.json调试配置:在原有配置基础上增加python字段,强制指定调试用的解释器路径,避免自动识别异常,完整配置参考:
{
    "name": "Python: Django",
    "type": "python",
    "request": "launch",
    "program": "${workspaceFolder}/manage.py",
    "args": ["runserver"],
    "django": true,
    "python": "/Users/username/documents/programmering/bq/env/bin/python3",
    "env": { "PYTHONPATH": "${workspaceRoot}"}
}
  • 校验pyenv配置:检查你的shell配置文件(/.zshrc或/.bashrc)中是否已添加pyenv初始化脚本,确保pyenv版本优先级正常:
export PYENV_ROOT="$HOME/.pyenv"
command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

所有配置完成后完全退出VSCode再重新打开项目,启动调试后打印sys.version和sys.path即可看到版本为3.6.9,且sys.path中包含虚拟环境的site-packages路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 11:36:03