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

新手上路,请多包涵

编辑

使用 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)

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

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

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

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

原文由 Alperen 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.5k
2 个回答

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

If you are using a virtual env on linux on the drop down, select env > bin > python ie env/bin/python

原文由 chia yongkang 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题