【问题标题】:How to use the Python debugger in venv in VScode on Windows?如何在 Windows 上的 VScode 中使用 venv 中的 Python 调试器?
【发布时间】:2021-10-21 15:13:37
【问题描述】:

操作系统:Windows10Pro

IDE:VScode Ver1.59.0

Python:版本 3.9.6

我使用 venv 创建了一个虚拟环境,并使用“选择解释器”在虚拟环境中选择了 python.exe。 即使我在简单脚本上指定断点并执行调试(F5),也会忽略并执行断点。

在 VMware 上的 Ubuntu 20.04 中,我使用 VScode Ver1.59.0 以同样的方式调试,所以它会在断点处停止。

在 Windows 和 Ubuntu 中,我没有在 launch.json 或 setting.json 中指定路径。

在 Windows 上,我在 launch.json 中指定了 python 路径,但调试器不起作用。

这是特定于 Windows 环境的错误吗?还是我忘了设置什么?


1.python -m venv [ENV_NAME]

2.在VScode上打开文件夹[ENV_NAME]

3.打开终端

4../脚本/激活

5.创建python脚本

a=0
print(a) #<-set berak point

6.选择解释器 -> ./Script/python.exe

7.按F5(运行dubug)

【问题讨论】:

  • 如果您打开带有 virt env 的文件夹并选择启动应该为您激活环境的环境,如果不重新启动 VSC,如果会话中未更改解释器设置,它应该可以工作跨度>
  • 我确保我的 VENV 上的 python 解释器正在运行。我 pip install / uninsatall the requests 包并查看导入请求是否引发错误。我认为调试器不工作。我确保我的 VENV 上的 python 解释器正在运行。我认为调试器不工作。我不知道这从 VScode 版本是什么时候发生的,但过去调试器是这样工作的。
  • 我想知道你为什么在 VS Code 中将 venv 作为 root_project 打开?您能否尝试使用 .py 文件打开文件夹,然后选择 venv 作为 python 解释器?使用默认配置创建 launch.json 然后开始调试。看看它是否在断点处停止。
  • 好像没听懂。原因是 venv 文件夹是项目文件夹。我将 venv 文件夹设置为项目文件夹的子文件夹,并且调试器正常工作。
  • 如果你打开 venv 作为 root_project 这也是 VS Code 的当前工作目录并且 .py 不在其中,launch.json 将不起作用,因为它只对当前项目有效。当您将项目作为当前工作目录打开时,即使您使用其他文件夹中的 venv 作为解释器,调试工作也是因为 .py 文件在其有效范围内:当前工作空间。

标签: python windows visual-studio-code visual-studio-debugging python-venv


【解决方案1】:

我不明白Windows上的VScode必须直接在工作区文件夹下创建一个ENV文件夹。

奇怪的是,在 Ubuntu 上,即使 ENV 文件夹是工作区文件夹,调试器也能正常工作。


1.创建项目文件夹

2.在VScode上打开项目文件夹

3.打开终端

4.cd 项目文件夹

5.create venv (python -m venv [ENV_NAME])

6../[ENV_NAME]/脚本/激活

7.创建python脚本

8.选择解释器 -> ./[ENV_NAME]/Script/python.exe

9.按F5(运行dubug)

【讨论】:

    猜你喜欢
    • 2021-02-03
    • 1970-01-01
    • 2021-05-10
    • 2020-09-25
    • 2021-12-12
    • 2023-02-16
    • 1970-01-01
    • 1970-01-01
    • 2022-08-07
    相关资源
    最近更新 更多