尽管我安装了模块,但在 VS 代码中未找到模块错误

An *_*rer 10 python module visual-studio-code

我正在尝试使用 VS 代码调试一些 python 代码。我收到有关我确定已安装的模块的以下错误。

Exception has occurred: ModuleNotFoundError
No module named 'SimpleITK'
  File "C:\Users\Mido\Desktop\ProstateX-project\src\01-preprocessing\03_resample_nifti.py", line 8, in <module>
    import SimpleITK as sitk
Run Code Online (Sandbox Code Playgroud)

我使用安装了模块

sudo pip install SimpleITK

我知道它已安装,因为当我通过命令行运行代码时遇到了类似的错误,并且通过执行上述操作修复了它。我不明白为什么 VS 代码不能识别

IT *_*ogs 41

此错误是因为您的 VS Code 使用另一个 Python 版本。

解决方案是配置 VS Code 以使用正确的 Python:

  1. 在终端中,找到当前的 python 版本:

    py --版本

  2. 在 VS Code 中,按Ctrl+ Shift+ P(在 Windows 上),然后键入:

    Python:选择解释器

  3. 选择当前的python版本


Yev*_*Yev 18

面临类似的问题,这是我解决它的方法。请记住,有多种方法可以在 VS Code 中运行代码。对于每种方式,您最终可能会遇到不同的解释器和环境。例如: 在此输入图像描述


1.创建虚拟环境并安装库

  • 就我而言,我选择创建虚拟环境并使用命令提示符在 VS Code 之外执行此操作:
    python -m venv .plotting_test
    在此输入图像描述

  • 之后我激活了它:
    .plotting_test\Scripts\activate.bat

  • 接下来我安装了额外的库:
    python -m pip install matplotlib

  • 接下来,我确保所有安装都正常:
    python -m pip list
    在此输入图像描述

  • 我还检查了当前目录的位置:
    cd
    在此输入图像描述


2. 将 VS Code 和 VS Code Code Runner 指向虚拟环境

  • 打开 vs code,关闭以前的工作区,打开新文件夹,在我开始新工作时创建 test.py。按下去ctrl + shift + p。选择“Python:选择解释器”:
    在此输入图像描述

  • 其次是+ Enter interpreted path
    在此输入图像描述

  • 导航到第 1 节最后一步的目录。找到在第一步中创建的虚拟环境文件夹,并将 VS code 指向脚本中该版本的 python.exe:
    在此输入图像描述

  • 已验证我指出了这样的:
    在此输入图像描述

  • 保存为工作区,以便我可以为此项目创建默认工作区设置:
    在此输入图像描述

  • 在工作区设置文件中,定义了在步骤 1 中为工作区解释器和 CODE RUNNER 创建的虚拟环境的路径(!):
    在此输入图像描述

    "settings": {
            "python.defaultInterpreterPath": "C:/Users/yyguy/.plotting_test/Scripts/python.exe",
            "code-runner.executorMap": {"python": "call C:/Users/yyguy/.plotting_test/Scripts/activate.bat && python -u"}
    }
}
Run Code Online (Sandbox Code Playgroud)
  • 重新加载窗口只是为了确保 (ctrl + shift + p) =“开发人员:重新加载窗口” 在此输入图像描述

  • 现在运行代码并运行 python 文件应该在您指定的环境下执行:
    在此输入图像描述

在此输入图像描述


Bre*_*non 9

sudo pip install很可能会全局安装到 Python 解释器中,该解释器与您在 VS Code 中选择的解释器不同。请选择您要使用的 Python 解释器,然后使用该解释器显式安装(如果您不使用虚拟环境,则使用类似/path/to/python -m pip install SimpleITK,尽管我强烈建议使用虚拟环境并且不要全局安装软件包)。

  • 这个答案解决了我的问题。即使我设置了虚拟环境,集成终端本身也指向_不同_ Python。因此,通过在终端的 Python 中运行“pip”安装的模块可供终端使用,但无法被其中运行的工作区文件访问。知道如何让终端使用与工作区其余部分相同的 Python 吗?即虚拟环境中的那个? (5认同)
  • 如果您在扩展中选择了虚拟环境(并且加载了扩展),那么当您打开新终端时,扩展将激活虚拟环境的 shell,以便“python”将指向您想要的解释器。 (2认同)

myi*_*lab 8

有很多建议的答案建议更改 launch.json 或 settings.json 文件。然而,这些解决方案都不适合我。

我的情况:

  1. 是否选择了Python环境?是的
  2. 终端可以识别Python环境吗?是的
  3. 我可以从激活的终端运行 Python 代码吗?是的
  4. 当我使用“开始调试”时,代码运行时是否没有错误?是的
  5. 当我单击“运行代码”时,代码是否运行?不

对我有用的唯一解决方案是:

  1. 打开 Windows 终端(或 cmd)
  2. 激活环境:conda activate <environment_name>
  3. 从终端打开 Visual Studio Code:code

然后,“运行代码”(#5)就可以正常工作。

来源:
使用 Conda 的 VS Code 中的“模块未找到错误” - l3d00m 的答案


Esm*_*elE 7

使用 pip 安装新模块后,如果 vscode 无法识别,请重新加载 vscode。

正确的方式安装模块python3 -m pip install {new_module}

重新加载 vscode: Ctrl+ Shift+ P,选择重新加载窗口

重新加载 vscode 后将知道新模块和自动完成工作。

  • 步骤 2 在 macOS 上按 Cmd + Shift + P 完成,选择 **重新加载窗口** (6认同)

小智 7

在 Mac 中,正确选择 Python 解释器对我有用:

在 VS Code 中,通过打开命令面板 (??P) 选择 Python 3 解释器,开始键入 Python:选择要搜索的解释器命令,然后选择命令。如果可用,您还可以使用状态栏上的“选择 Python 环境”选项(它也可能已经显示了选定的解释器):

未选择口译员

该命令提供了 VS Code 可以自动找到的可用解释器列表,包括虚拟环境。如果您没有看到所需的解释器,请参阅配置 Python 环境。

来源:VS Code 选择解释器


dij*_*kul 6

我在 VS Code 中遇到了这个问题,并通过将 VS Code 中的 Python 解释器设置为与系统路径中的解释器相同来解决该问题。例如,在 Windows 上,输入

echo %PATH%
Run Code Online (Sandbox Code Playgroud)

并寻找Python。

请按照此处的流程操作:
https://code.visualstudio.com/docs/python/python-tutorial#_select-a-python-interpreter