如何使用 VSCode 在虚拟环境中调试 python 代码?

Alp*_*ren 14 python debugging anaconda visual-studio-code

编辑

使用 VSCode,我在虚拟环境中调试时遇到问题,该环境具有未安装在base环境中的不同软件包。使用命令激活环境后activate my_env,我可以使用通常的 python 命令将环境中的包用作python main.py. 但是在调试时,我无法使用仅安装在my_env. 如何使用 VSCode 在虚拟环境中调试 python 代码?

这是问题的摘要。其余的有一些关于我的案例的具体信息。

编辑前

我正在尝试xmltodict使用 Visual Studio 代码使用带有简单代码的包。

import xmltodict

with open('C:\\Users\\user\\foo.xml') as f:
    db_dict = xmltodict.parse(f.read())

print(db_dict)
Run Code Online (Sandbox Code Playgroud)

我有一个名为 的虚拟环境my_env,我xmltodict在其中安装了软件包。当我用 激活环境时activate my_env,此代码工作正常。但是,当我尝试使用 vscode调试选项时,它会No module named 'xmltodict'出错。因为 vscode 调试按钮打开新的 cmd 并在其中运行调试命令,我停止调试并输入activate my_env该 cmd 并尝试再次调试,但仍然找不到模块。另外,我在 vscode 中尝试了 jupiter notebook,它也没有看到包。

我看到import xmltodict在 vscode 中用红色下划线并显示Unable to import 'xmltodict',但是当我从 cmd 正常运行它时它可以工作。其他模块有时会发生这种情况,我不知道为什么。我xmltodict使用安装了模块pip,也许是它造成的。

我在 Windows 10 上使用 Visual Studio Code 1.30.1 和 Anaconda Python 3.7.1。

如何使用 VSCode 在虚拟环境中调试 python 代码?我看到了这个问题,但我认为这不是我想要的?

chi*_*ang 7

使用Python:从命令面板(Ctrl+Shift+P)中选择解释器命令,然后选择属于新虚拟环境的Python解释器。

linux如果您在下拉列表中使用虚拟环境,请选择env>> biniepythonenv/bin/python


Bre*_*non 6

设置"python.pythonPath"为指向您要使用的虚拟环境中的解释器。

  • 谢谢。如果我们将 `python.pythonPath` 添加到 `settings.json` 中,它就可以工作。但是,我只是想添加另一种方法来制作同样的东西。使用 **命令面板 (Ctrl+Shift+P)** 中的“Python:选择解释器”命令,然后选择属于新虚拟环境的 python 解释器。我一开始就尝试过这个,但在选择列表中看不到新环境的 python 解释器。**重新启动 VSCode** 解决了我的问题。重新启动后,我可以在选择列表中看到新环境的Python解释器。 (10认同)