【问题标题】:VS code venv not detected (WSL)未检测到 VS 代码 venv (WSL)
【发布时间】:2020-07-31 07:05:01
【问题描述】:

我最近切换到 WSL (Ubuntu)。现在,当我使用

创建一个虚拟环境时

python -m venv venv

在vs代码中没有自动检测到。

我的 settings.json

{
    "python.pythonPath": "C:\\Users\\ankus\\AppData\\Local\\Programs\\Python\\Python37-32\\python.exe",
}

我试过改成这个

{
    "python.pythonPath": "/mnt/c/Users/ankus/OneDrive/Documents/Main Projects/project_folder/venv/bin/python"
}

但似乎没有任何效果。

Also, I can see only 1 python interpreter

【问题讨论】:

  • 你激活venv了吗?

标签: python visual-studio-code windows-subsystem-for-linux python-venv


【解决方案1】:

我遇到了这个问题,因为我没有通过 VSC 上的 WSL-Remote 扩展打开文件夹。

尝试下载 Microsoft 提供的 VSC 扩展“Remote - WSL”。 然后转到包含您的虚拟环境的文件夹并使用“Ctrl + Shift + P”并搜索“远程 WSL:在 WSL 中重新打开文件夹”

当我这样做并打开其中一个 python 文件时,VSC 自动找到了 venv。您可能仍需要选择解释器,但这次应该可以使用虚拟环境。我不需要更改任何 python.Path 设置来实现这一点。

【讨论】:

    【解决方案2】:

    尝试设置python.venvFolders:

    "python.venvFolders": [
        "/mnt/c/Users/ankus/OneDrive/Documents/Main Projects/project_folder/venv"
    ],
    

    如果您使用“Remote - WSL”,则应在 WSL 中创建 venv。它可能仍然无法在/mnt/c/ 或任何其他 Windows 卷下工作。尝试将您的项目移动到 /home 内的某个文件夹并在那里创建 venv。

    您可以在 Windows 资源管理器中键入 \\wsl$ 以访问您的 WSL 文件。

    【讨论】:

    • [na 一样][1] [1]: i.stack.imgur.com/JHFck.png
    • 我已经更新了我的答案。如果没有帮助,请提供有关您的 vscode、扩展和 wsl 设置的更多详细信息。
    • 我的wsl中的所有文件都不在我的c盘吗?如果不是,它存储在哪里?
    • 它们以不同的方式存储以兼容linux环境
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-19
    • 2020-03-13
    • 1970-01-01
    • 2018-05-11
    • 2020-03-01
    • 2019-03-19
    相关资源
    最近更新 更多