VS代码:Python解释器找不到我的venv

时间:2019-11-17 23:25:15

标签: python django visual-studio-code python-venv

我已经坚持了几天,请帮忙。

我的根项目文件夹中有我的venv文件夹。当我尝试设置Python解释器时,它只会显示我机器中安装的Python,而不显示我的根文件夹中的Python。

在我格式化PC并安装10 64位Windows 10之前,它工作正常。 (已在Windows 7 64位之前运行)

我尝试过的事情:

  • 在工作区和用户设置中,通过pythonPath和/或venvPath手动设置路径:
    "python.pythonPath": "F:/Web Dev/Python/Django/project_x_v2/backend/venv/Scripts/python.exe",
    "python.venvPath": "F:/Web Dev/Python/Django/project_x_v2/backend/venv/Scripts/python.exe",

enter image description here

它向我显示了占位符的正确位置,但我没有选择从下拉列表中选择的位置:

enter image description here

有什么办法可以解决这个问题吗?

非常感谢您。

编辑:

  • 在图像中显示为“ python”,但我已将其更正为“ python.exe”,但仍无法正常工作;
  • ~\AppData\...位于磁盘C:\中,而我的venv位于磁盘F:中。我不确定这是否有意义;
  • venv在控制台中运行正常。

4 个答案:

答案 0 :(得分:5)

我发现的唯一解决方案是删除venv并重新创建。我遵循了these steps,但将提供Windows的简要摘要:

  1. 激活您的virtualenv。转到虚拟环境所在的父文件夹,然后运行venv\scripts\activate。请记住,“ venv”的名字可能会有所不同。
  2. 创建一个requirements.txt文件。 pip freeze requirements.txt
  3. deactivate退出venv
  4. rm venv删除venv
  5. py -m venv venv创建一个新的
  6. pip install -r requirements.txt安装要求。

答案 1 :(得分:4)

放下"python.venvPath"设置(它并没有按照您认为的那样做),不要在用户设置中指定这些设置,而将"python.pythonPath"更改为相对于您的项目,例如:

"python.pythonPath": "venv/Scripts/python.exe"

答案 2 :(得分:0)

这应该解决它:

转到 fun <T> List<T>.applyMask(mask: List<Boolean>): List<T> = run { require(size == mask.size) { "Lists must be of equal size" } filterIndexed { i, _ -> mask[i] } }

单击工作区设置。

点击File > preferences > Settings.

更新the document symbol at the top right corner to edit setting.json

这就是Ubuntu的全部内容。

但是,"python.pythonPath": "Your_venv_path/bin/python"

重新启动Vscode。

祝您编程愉快!

答案 3 :(得分:0)

就我而言,删除并重新创建 venv、从 VS Code 中选择 venv 或更新 pythonPath 以指向 venv 是不够的。 VS Code 仍然无法找到 venv 或单元测试。事实证明,问题是我重新组织了我的项目文件夹,因此我的项目不再位于我最初创建其先前虚拟环境的同一位置。唯一有效的解决方案是删除 venv,将项目移回之前所在的同一个父文件夹,然后创建一个新的 venv。