繁体   English   中英

如何在 Visual Studio Code 中调试 Python 3 代码?

[英]How can I debug Python 3 code in Visual Studio Code?

我想在 Visual Studio Code 中调试一个用 Python 3 编写的项目,但我似乎无法在 launch.json 文件中找到任何指定解释器或 Python 版本的方法。

它适用于 Python 2,所以问题是,我如何使它适用于 Python 3?

截至 2016 年 9 月(根据扩展的 GitHub 存储库文档),您只需在 Visual Studio Code 中执行一个命令,即可让您从自动生成的已知解释器列表(包括项目虚拟环境)。

执行:

Python: Select Workspace Interpreter

对于更高版本,只需:

Python: Select Interpreter

在命令面板中(Windows 为F1 ,macOS 为Ctrl + Shift + P )。

然后选择下拉列表中显示的 Python 解释器之一。 就是这样。 您的settings.json文件将被自动编辑以指向您选择的解释器。

来源: Don Jayamanne 在 GitHub 上的扩展文档

注意:由于我无法对已接受的答案发表评论,因此我复制了一些类似问题的答案

Python 3 调试也很有效。 这有点令人困惑,因为有两个不同的地方可以指定路径: settings.jsonlaunch.json

我建议使用Don Jayamanne 的 Python 扩展 安装后,您必须配置要使用它的解释器的路径

用于 Intellisense、自动完成、linting、格式化等的 Python 版本。

相同的 Python 解释器用于智能感知、自动完成、linting、格式化等(除调试之外的一切)。 使用的标准解释器是当前路径中遇到的第一个 Python 解释器。 如果要使用不同的版本,可以通过以下两种方式之一进行配置:

在用户设置文件(settings.json)中配置python解释器的路径如下。 确保指定 python 可执行文件的完全限定名称。 "python.pythonPath": "c:/python27/python.exe"

在工作区设置文件 (settings.json) 中配置 Python 解释器的路径,如下所示。 确保指定 Python 可执行文件的完全限定名称。 "python.pythonPath": "c:/python27/python.exe" 用于调试的 Python 版本

有关调试的配置设置的详细信息可以在此处找到调试。 只需在 launch.json 文件的配置设置中的“python”设置中提供 python 可执行文件的完全限定路径,如下所示:

{
    "name": "Python",
    "type": "python",
    "request": "launch",
    "stopOnEntry": true,
    "program": "${file}",
    "pythonPath": "c:/python27/python.exe",
    "debugOptions": [
        "WaitOnAbnormalExit",
        "WaitOnNormalExit",
        "RedirectOutput"
    ]
}

我们可以在文件settings.json 中配置 Python 3 中的调试:

菜单文件首选项设置(文件~/.config/Code/User/settings.json )(用户设置)

{
  ...
  "python.pythonPath": "python3",
}

此外,请验证launch.json文件是否已具有以下配置:

"configurations": [
  {
    "name": "Python: Current File (Integrated Terminal)",
    "type": "python",
    "request": "launch",
    "program": "${file}",
    "console": "integratedTerminal"
  },
  ...
]

设置文件中有一个设置触发器:

对于 Python 默认(现在是 2.7)

"python.pythonPath": "python",

对于 Python 3:

"python.pythonPath": "python3",

使用以下命令检查 Python 版本:

import sys
  print(sys.version)

对通过连续分析使用Anaconda Python 发行版的人的额外说明:您可能会发现我的经验很有用。

我正在使用Don Jayamanne 的 Python 扩展并运行“Select Workspace Interpreter”命令,但仍然发现我收到了有关 Python 版本错误的 linting 建议。

对我有用的修复是为 Anaconda 安装Pylint包:

conda install -c anaconda pylint

要在 Visual Studio Code 中调试 Python 项目,请使用启动配置,如下所示:

        "name": "Python: Current File",
        "type": "python",
        "request": "launch",
        "program": "${cwd}/{filename}.py",
        "args" : [
            "--arg1", "arg1-value",
            "--arg2", "arg2-value",
            "--arg3", "arg3-value"
        ],
        "console": "integratedTerminal"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM