3

我在 Mac 上使用 VS Code 来编写 Python 代码。我在我的项目文件夹中创建了一个名为“venv”的虚拟环境,并在我的项目文件夹中打开了 VS Code。我可以在资源管理器窗格中看到 venv 文件夹。但是,如果我将包安装到虚拟环境中并尝试将包导入 Python 模块然后运行该模块,VS Code 会引发 ModuleNotFound 错误,指出没有模块。

我按照 VS Code 文档在 VS Code中使用 Python 环境中的说明进行操作,打开命令面板,选择 Python:选择解释器,然后选择“venv/bin/folder”。但是当我这样做时,我得到了这个错误:

Failed to set 'pythonPath'. Error: Unable to write into folder settings.  Please open the 'my_project' folder settings to correct errors/warnings in it and try again.

这些“文件夹设置”是什么?我在上面引用的文档中没有看到任何关于我的虚拟环境目录的文件夹设置的内容。

环境:
VS Code 1.35.1
Python for VS Code 0.2.3
Python 3.7.1

更新

接受@khuynh 的建议,我打开了settings.json 并发现了一个错误,那就是我试图用“//”注释掉一行。我没有意识到 JSON 文件不能包含注释。

取出那条线后,我再次运行“Python:选择解释器”,但这一次.vscode > settings.json >> code-runner.executorMap.python出现了一个顶部显示的选项卡。该选项卡包含以下代码:

    {
        "python.pythonPath": "/usr/local/bin/python3"
        "code-runner.executorMap.python": "python3 -u"
    }

“code-runner.executorMap.python”下方有一条红色波浪线,下面的“问题”窗口显示“未知配置设置”。我不明白这个设置有什么问题。

4

6 回答 6

3

如果您的工作场所设置文件中有错误,则无法选择 Python 解释器。您在“python.pythonPath”行之后缺少一个逗号。

(我看到其他人在评论中回答了这个问题,但我想发布一个答案,以便其他人更容易找到。)

于 2019-07-06T14:35:18.493 回答
2

似乎现在被称为python.defaultInterpreterPath

于 2022-02-15T16:42:00.093 回答
2

要在带有 python 虚拟环境的 Mac 上设置 Visual Studio Code,请使用快捷方式“ command + shift + p ”在 Visual Studio Code 中编辑 JSON 工作区设置

首选项:打开工作区设置 (JSON)

在 Visual Studio Code Version: 1.45.1 中,workspace.json 设置如下所示:

{
    "folders": [
          {
              "path": "/Users/me/Documents/Projects/djangoproject"
          }
      ],
      "settings": {
          "python.pythonPath": "/Users/me/virtualenvs/djangovenv/bin/python3"
      }
}

这将在 Mac 上打开新的 bash 终端时自动激活 python 虚拟环境。

于 2020-06-05T16:39:43.607 回答
2

听起来您直接打开了 Python 文件而不是打开包含该文件的文件夹。如果你做后者,那么你可以在你的设置中指定 Python 解释器。

否则,您可能会遇到阻止创建.vscode文件夹以保存设置的权限错误。

于 2019-06-18T23:17:14.620 回答
0

刚才,我从工作 PC 移动到家庭 PC 后,在外部驱动器上重新打开了 VS Code 工作区,遇到了这个错误。

我通过打开 VS 代码设置 cmd+shift+p 解决了这个问题,然后输入“设置”并选择选项“首选项:打开设置(JSON)”

然后我编辑了这一行: "python.pythonPath": "C:\\Python37\\python3.exe",

到以下(检查python可执行文件的路径): "python.pythonPath": "C:\\Python37\\python.exe",

修理。

更新: 我想到的是,当我下周从我的工作计算机访问该项目时,我可能会再次遇到这个问题,因为我在那里安装了不同的 python 版本。将发布结果

于 2019-09-06T07:51:25.237 回答
0

对我来说,wsl2 中的 python 插件丢失了。安装它并更改为 python.defaultInterpreterPath (新)为我修复了它。

于 2021-10-06T08:09:54.690 回答