如何从 Visual Studio 代码中执行 Python 代码

How to execute Python code from within Visual Studio Code

Visual Studio Code 最近发布了,我喜欢它的外观和它提供的功能,所以我想我会试一试。

我从 downloads page 下载了该应用程序,将其启动,对某些功能进行了一些修改...然后意识到我不知道如何实际执行我的 Python代码!

我真的很喜欢 Visual Studio 代码的外观和 feel/usability/features,但我似乎无法找到如何 运行 我的 Python 代码,一个真正的杀手,因为这是我编程的主要目的。

有没有办法在Visual Studio代码中执行Python代码?

您可以add a custom task执行此操作。这是 Python.

的基本自定义任务
{
    "version": "0.1.0",
    "command": "c:\Python34\python",
    "args": ["app.py"],
    "problemMatcher": {
        "fileLocation": ["relative", "${workspaceRoot}"],
        "pattern": {
            "regexp": "^(.*)+s$",
            "message": 1
        }
    }
}

您将此添加到文件 tasks.json 并按 Ctrl + Shift + B到运行它。

这里是如何在 Visual Studio 代码中配置 Task Runner 到 运行 .py 文件。

在您的控制台中,按 Ctrl + Shift + P(Windows) 或 Cmd + Shift + P (Apple)。这将打开一个搜索框,您可以在其中搜索“Configure Task Runner”

如果这是您第一次打开“任务:配置任务运行程序”,您需要select下一个select离子列表底部的“其他”。

这将显示属性,您可以根据自己的喜好进行更改。在这种情况下,您想更改以下属性;

  1. 将命令 属性 从 "tsc" (TypeScript) 更改为 "Python"
  2. 将 showOutput 从 "silent" 更改为 "Always"
  3. args(参数)从 ["Helloworld.ts"] 更改为 ["${file}"](文件名)
  4. 删除最后一个属性problemMatcher
  5. 保存所做的更改

您现在可以打开您的 .py 文件并 运行 使用快捷键 Ctrl + Shift + B (Windows) 或 Cmd + Shift + B(苹果)。

运行 Python 有一个更简单的方法,它不需要任何配置:

  1. 安装 Code Runner Extension.
  2. 在文本编辑器中打开 Python 代码文件。
  3. 至运行 Python代码:
  • 使用快捷键 Ctrl + Alt + N
  • 或按F1然后select/type运行代码,
  • 或右键单击文本编辑器,然后单击编辑器上下文菜单中的运行代码
  • 或单击编辑器标题菜单中的运行代码按钮
  • 或单击文件资源管理器上下文菜单中的运行代码按钮
  1. 停止运行宁码:
  • 使用快捷键 Ctrl + Alt + M
  • 或按F1然后select/type停止代码运行
  • 或右键单击输出通道,然后单击上下文菜单中的停止代码运行

如果要添加Python路径,可以到文件首选项Settings,然后添加 Python 路径,如下所示:

"code-runner.executorMap":
{
  "python": "\"C:\Program Files\Python35\python.exe\" -u"
}

如果您已经安装了 Python 扩展并手动设置了解释器,您可以按如下方式配置 settings.json 文件:

{
    "python.pythonPath": "C:\\python36\\python36.exe",
    "code-runner.executorMap":
    {
        "python": "$pythonPath -u $fullFileName"
    }
}

所有这些答案现在都已过时。

目前你必须:

  1. 安装 Python language extension(显然 Python)
  2. 打开文件夹(重要!),打开该文件夹中的任何 Python 文件
  3. 切换到调试“选项卡”(?) 并单击变速箱(提示“修复配置 'launch.json'”)
  4. 保存打开的launch.json文件(放在步骤#2打开的文件夹的.vscode子目录下)
  5. 最后,单击绿色三角形或按 F5

现在不需要额外的扩展或手动 launch.json 编辑。

终端中有一个 运行 Python 文件 命令可用于 Python for Visual Studio Code 扩展。

扩展 (read his first); that is how you set up Python debugging in Visual Studio Code with Don Jayamanne's great Python extension(这对于 Python 来说是一个非常完整的功能 IDE,并且可以说是 Visual Studio Code 最好的语言扩展之一,IMO)。

基本上,当您单击齿轮图标时,它会在您工作区的 .vscode 目录中创建一个 launch.json 文件。您也可以自己制作,但让 Visual Studio 代码完成繁重的工作可能更简单。这是一个示例文件:

生成后您会发现一些很酷的东西。它自动创建了一堆配置(我的大部分都被切断了;只需滚动查看所有配置),为不同的库或环境(如 Django)提供不同的设置和额外功能。

您可能最终使用最多的是 Python;这是一个普通的(在我的例子中是 C)Python 调试器,最容易明智地使用设置。

我将简要介绍一下这个属性的 JSON 属性,因为其他属性使用几乎相同的配置,只有不同的解释器路径和一两个不同的其他功能。

  • name:配置的名称。如果您有两个 Python 配置,它们使用相同类型的配置,但参数不同,那么您为什么要更改它的一个有用示例。它显示在左上角的框中(我的框显示“python”,因为我使用的是默认 Python 配置)。
  • type:解释器类型。你一般不想改变这个。
  • request:您想如何 运行 您的代码,您通常也不想更改此代码。默认值为 "launch",但将其更改为 "attach" 允许调试器附加到已经 运行 宁 Python 进程。不要更改它,而是添加一个附加类型的配置并使用它。
  • stopOnEntry: Python 调试器喜欢在您启动程序时有一个不可见的断点,这样您就可以看到入口点文件以及第一行活动代码所在的位置。它让像我这样的一些 C#/Java 程序员抓狂。 false 如果您不想要,true 否则。
  • python路径:Python 的安装路径。默认值在 user/workspace 设置中获取扩展级别默认值。如果你想为不同的调试进程设置不同的 Python,请在此处更改它。如果要为项目中设置为默认配置的所有调试进程更改它,请在工作区设置中更改它。在用户设置中更改它以更改扩展程序在所有项目中找到 Pythons 的位置。 (4/12/2017 以下内容已在扩展版本 0.6.1 中修复)。 具有讽刺意味的是,这会自动生成错误。它自动生成为“${config.python.pythonPath}”,在较新的 Visual Studio 代码版本中已弃用。它可能仍然有效,但您应该使用“${config:python.pythonPath}”代替路径上的默认第一个 python 或 Visual Studio 代码设置。 (4/6/2017 编辑:这应该在下一个版本中修复。团队几天前提交了修复。)
  • 程序:当您点击 运行 时调试器启动的初始文件。 "${workspaceRoot}" 是您作为工作区打开的根文件夹(当您转到文件图标时,即打开的基本文件夹)。如果你想让你的程序 运行 快速运行,或者你的程序有多个入口点,另一个巧妙的技巧是将它设置为 "${file}",这将在文件 you 开始调试在你点击 debug.
  • 的那一刻打开并聚焦
  • cwd:您正在 运行ning 的项目的当前工作目录文件夹。通常你只想离开这个 "${workspaceRoot}".
  • debugOptions:一些调试器标志。图片中的是默认标志,我敢肯定,您可以在 python 调试器页面中找到更多标志。
  • args:这实际上不是默认配置设置,但仍然很有用(可能是 OP 询问的内容)。这些是您传递给程序的命令行参数。调试器将它们传递进来,就好像它们是您输入的一样: python file.py [args] 进入您的终端;按顺序将列表中的每个 JSON 字符串传递给程序。

您可以前往 here 了解有关可用于配置调试器和路径的 Visual Studio 代码文件变量的更多信息。

您可以前往 here 获取有关启动选项的扩展自身文档,其中包含可选属性和必需属性。

如果您没有在文件中看到配置模板,可以单击右下角的 添加配置 按钮。它会为您提供一个列表,用于为大多数常见的调试过程自动生成配置。

现在,根据 vlad 的回答,您可以按照普通的可视化调试器添加您需要的任何断点,在左上角的下拉菜单中选择您想要的 运行 配置,然后您可以点击绿色箭头留下配置名称来启动你的程序。

专业提示:您团队中的不同人员使用不同的 IDE,他们可能不需要您的配置文件。 Visual Studio 代码几乎总是将它的 IDE 文件放在一个地方(为此目的而设计;我假设),启动或以其他方式确保将目录 .vscode/ 添加到你的 .gitignore 如果这是这是您第一次生成 Visual Studio 代码文件(如果您还没有该文件夹,此过程将在您的工作区中创建该文件夹)!

简单直接的Python extension会省时省力。 一旦安装完成,检查、调试、代码完成都是可用的功能。在此之后,为了运行代码需要配置运行代码正确的Python安装路径。 General settingsUser 范围内可用,并且 Workspace 可以配置为 Python 语言 – "python.pythonPath": "c:/python27/python.exe" 通过以上步骤至少可以执行基本的Python程序。

您不再需要任何额外的扩展。您可以简单地将调试器的输出切换到集成终端。

Ctrl+Shift+D,然后select综合Terminal/Console 来自顶部的下拉列表。

Visual Studio Code documentation所述,只需右键单击编辑器中的任意位置,然后select 运行 Python 终端中的文件.

所以在Visual Studio中运行Python有四种方法 到目前为止的代码:

  1. 通过 integrated terminal(来吧,它是 集成的 !所以从技术上讲,您 运行 它来自 Visual Studio 代码;)
  • 无需安装任何扩展。
  • 无需创建和配置 任何东西(假设您的 $PATH 中已经有 python)。
  • ⌃Space(打开终端)和python my_file.py(运行 文件)。
  1. 通过自定义 Task (accepted ):
  • 无需安装任何扩展。
  • 默认Visual Studio代码的处理方式。
  • 注意不要copy-paste答案因为它的problemMatcher.pattern.regexp坏了,它挂了编辑器。最好删除 problemMatcher 或将 regexp 更改为至少 ^\s+(.*)$.
  1. 通过 Code Runner 扩展(@JanHan 的回答):
  • 需要在 User Settings 中配置 code-runner.executorMap(将路径添加到 python)。
  • 非常有用的扩展,特别是如果您 运行 不仅是 Visual Studio 代码中的 Python。
  1. 通过微软的 official Python extension ():
  • 需要创建 launch.js(在 Visual Studio 代码的“调试”选项卡中单击几下)。
  • 该扩展是 must-have 供那些想使用 Visual Studio 代码作为主要 IDE 用于 Python 的人使用。

如果您使用的是Visual Studio代码的最新版本版本1.21.1)。 task.json 格式已更改,参见 here. So the and 可能不再有效。

开始配置之前

在开始配置 Visual Studio 代码之前 运行 设置您的 Python 文件。

  • 确保您已安装 Python 并将其可执行文件添加到您的系统路径中。
  • 您必须将 python 源文件所在的文件夹设置为您的工作文件夹(转到 File -> Open Folder 设置您的工作文件夹)。

配置步骤

现在您可以配置任务了。以下步骤将帮助您 运行 您的 python 文件正确:

  1. 使用Ctrl+Shift+P并输入task,你将看到一个选项列表,select Tasks: Configure Task.

  1. 然后系统会提示您 create task.json from template,请选择此选项,然后系统会提示您从选项列表中进行选择。选择Others.

  1. 然后在打开的task.json文件中,使用如下设置:

     {
     "version": "2.0.0",
     "tasks": [
         {
             "label": "run this script",
             "type": "shell",
             "command": "python",
             "args": [
                 "${file}"
             ],
             "problemMatcher": []
         }
     ]
     }
    

在上面的设置中,可以给这个任务一个有意义的label。例如,run python.

  1. 转到 Tasks 菜单并单击 Run Task。系统将提示您选择任务。只需选择新创建的 run this script 任务。您将在 TERMINAL 选项卡中看到结果。

有关任务配置的更完整教程,请转到 Visual Studio Code official documentation

超级简单:

F5 键,代码将 运行。

如果设置了断点,按F5将在断点处停止,运行代码处于debug模式。

其他方法-添加快捷方式

注意:您必须在 Visual Studio 代码中安装 Python Microsoft Extension,并在左下角选择 Python 解释器。

转到文件 → 首选项 → 键盘快捷键(或者,您可以按 Ctrl + K + S) 在搜索框中,输入 python.execInTerminal 双击该结果(或者,您可以单击加号图标) 按 Ctrl + Alt + B 将其注册为键绑定(或者,您可以输入自己的键绑定)

现在您可以关闭“键盘快捷键”选项卡 转到您想要 运行 的 Python 文件,然后按 Ctrl + Alt + B(或者,您可以按您设置的键绑定)以 运行 它。输出将显示在底部的终端选项卡中。

如果您正在 运行ning 代码并希望通过 运行ning 您的程序在终端中输入,最好的办法是直接在终端中 运行只需右键单击并选择“运行 Python 终端中的文件”。

为了使用相应的 venv 启动当前文件,我将其添加到文件 launch.json:

 {
        "name": "Python: Current File",
        "type": "python",
        "request": "launch",
        "program": "${file}",
        "pythonPath": "${workspaceFolder}/FOO/DIR/venv/bin/python3"
    },

bin 文件夹中包含 source .../venv/bin/activate 脚本,当 运行 来自常规终端时,该脚本会定期获取。

这是 运行ning Python 代码的当前(2018 年 9 月)扩展:

Official Python extension:这是必须安装的。

Code Runner:对各种语言都非常有用,而不仅仅是 Python。我强烈建议安装。

AREPL:实时 Python 暂存器,在一侧显示您的变量 window。我是这个的创造者,所以显然我认为它很棒,但我不能给出公正的意见¯\(ツ)

Wolf:实时 Python 内联显示结果的暂存器

当然,如果您使用集成终端,您可以在其中 运行 Python 编写代码,而不必安装任何扩展。

我通过 Anaconda.

安装了 Python

通过 Anaconda 启动 Visual Studio 代码,我能够 运行 Python 程序。

但是,我找不到任何直接运行 .py 文件的快捷方式(热键)。

(使用截至 2019 年 2 月 21 日的最新版本,带有 Visual Studio 代码附带的 Python 扩展。 Link: Python extension for Visual Studio Code)

以下有效:

  1. 右键单击并选择 'Run Python File in Terminal' 对我有用。
  2. Ctrl + A 然后 Shift + Enter(在 Windows 上)

下面和@jdhao做的类似。

这是我获取热键的方法:

  1. Ctrl + Shift + B // 运行 构建任务
  2. 它提供了一个配置选项
  3. 我点击它以获得更多选项。我点击了其他配置
  4. 打开了一个'tasks.json'文件

我把代码写成这样:

    {
        // See https://go.microsoft.com/fwlink/?LinkId=733558
        // for the documentation about the tasks.json format
        "version": "2.0.0",
        "tasks": [
            {
                "label": "Run Python File", //this is the label I gave
                "type": "shell",
                "command": "python",
                "args": ["${file}"]

保存后文件变成这样:

    {
        // See https://go.microsoft.com/fwlink/?LinkId=733558
        // for the documentation about the tasks.json format
        "version": "2.0.0",
        "tasks": [
            {
                "label": "Run Python File",
                "type": "shell",
                "command": "python",
                "args": [
                    "${file}"
                ],
                "group": {
                    "kind": "build",
                    "isDefault": true
                }
            }
        ]
    }
  1. 保存文件 'tasks.json' 后,转到您的 Python 代码并按 Ctrl + Shift + B.
  2. 然后点击运行任务运行Python文件 //这是那个标签 你给了。

现在每次按下 Ctrl + Shift + B,Python 文件将自动 运行 并显示输出:)

Extensions,安装 Code 运行ner。之后,您可以使用运行 Visual Studio 代码中的源代码的快捷方式。

首先:至运行代码:

  • 使用快捷键 Ctrl + Alt + N
  • 或按F1然后select/type运行代码,
  • 或在文本编辑器中右键单击 window,然后单击编辑器上下文菜单中的 运行 代码
  • 或单击编辑器标题菜单中的 运行 代码按钮(右侧的三角形)
  • 或单击文件资源管理器上下文菜单中的运行代码

二:停止运行ning代码:

  • 使用快捷键 Ctrl + Alt + M
  • 或按F1然后select/type停止代码运行
  • 或右键单击输出通道,然后单击上下文菜单中的停止代码运行
  1. 安装 Python 扩展(Python 应该安装在您的系统中)。要安装 Python 扩展,请按 Ctrl + Shift + X 然后键入 'python' 并输入。安装扩展程序。

  2. 打开包含 Python 代码的文件。是的! .py 文件。

  3. 现在 运行 .py 代码,只需右键单击编辑器屏幕并点击 'Run Python File in the Terminal'。就是这样!

现在这是附加步骤。其实我一次又一次点击很烦,所以我设置了键盘快捷键。

  1. 点击左下角的类似设置类型的图标 → 键盘快捷键 → 键入 'Run Python File in the Terminal'。现在你会看到那个+号,去选择你的快捷方式。您已 完成

在最新版本(1.36)的Visual Studio代码(Python)中:

F5 然后按 Enter 到 运行 您在集成终端中的代码。

Ctrl + A 然后按 Shift + Enter 到 运行 你的代码在交互 IPython shell.

如果您有一个由多个 Python 文件组成的项目,并且您想使用主程序启动 running/debugging 而不管哪个文件是当前文件,您可以创建以下启动配置(更改 MyMain.py到你的主文件)。

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Python: Main File",
      "type": "python",
      "request": "launch",
      "program": "${workspaceFolder}/MyMain.py",
      "console": "integratedTerminal",
      "cwd": "${workspaceFolder}"
    }
  ]
}

我使用 Python 3.7(32 位)。 运行 Visual Studio 代码中的程序,我右键单击该程序并 select“运行 Python Interactive Window 中的当前文件” .如果您没有 Jupyter,可能会要求您安装它。

围绕 Visual Studio 代码任务和调试器存在很多混淆。让我们先讨论一下,以便我们了解何时使用任务以及何时使用调试器。

任务

official documentation 表示 -

Lots of tools exist to automate tasks like linting, building, packaging, testing, or deploying software systems. Examples include the TypeScript Compiler, linters like ESLint and TSLint as well as build systems like Make, Ant, Gulp, Jake, Rake, and MSBuild.

.... Tasks in VS Code can be configured to run scripts and start processes so that many of these existing tools can be used from within VS Code without having to enter a command line or write new code.

因此,任务不是为了调试、编译或执行我们的程序。

调试器

如果我们查看调试器文档,我们会发现有一个叫做run mode的东西。它说 -

In addition to debugging a program, VS Code supports running the program. The Debug: Start Without Debugging action is triggered with Ctrl+F5 and uses the currently selected launch configuration. Many of the launch configuration attributes are supported in 'Run' mode. VS Code maintains a debug session while the program is running, and pressing the Stop button terminates the program.

因此,按 F5 和 Visual Studio 代码将尝试调试您当前的活动文件。

Press Ctrl + F5 and Visual Studio Code will ignore your breakpoints and 运行代码。

配置调试器

要配置调试器,请完成 the documentation。总之,它说,您应该修改 launch.json 文件。对于初学者,运行 集成终端中的代码(在 Visual Studio 代码内),使用 -

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

要运行外部终端中的代码(Visual Studio代码之外),使用-

{
    "name": "Python: Current File (External Terminal)",
    "type": "python",
    "request": "launch",
    "program": "${file}",
    "console": "externalTerminal"
}

N.B. 如果所有文档都易于搜索和理解,那么我们可能就不需要 Stack Overflow。幸运的是,我在这个 post 中提到的文档真的很容易理解。请随意阅读、思考和享受。

如果我只想 运行 终端中的 Python 文件,我会为命令创建一个键盘快捷键,因为默认情况下没有(你需要有Python 你路径中的解释器可执行文件):

  • 转到首选项键盘快捷键
  • 类型'run Python file in terminal'
  • 点击该命令的“+”并输入您的键盘快捷键

我用Ctrl + Alt + N.

注意:您必须在Visual Studio代码中安装Python Extension By Microsoft,并在左下角选择Python解释器。

  1. 转到文件首选项键盘快捷键(或者,您可以按Ctrl + K + S)
  2. 在搜索框中输入python.execInTerminal
  3. 双击该结果(或者,您可以单击 加号 图标)
  4. Ctrl + Alt + B 将其注册为键绑定(或者,你可以输入你自己的键绑定)
  5. 现在您可以关闭键盘快捷键选项卡
  6. 转到您要 运行 的 Python 文件,然后按 Ctrl + Alt + B (或者,您可以按您设置的键绑定)到 运行 它。输出将显示在底部的终端选项卡中。

在 VSCode 的新版本中(2019 年及更新版本)我们有 运行 和 python、

的调试按钮

调试:F5

运行 没有调试:Ctrl + F5

因此您可以通过转至 文件 > 首选项 > 键盘快捷键 来更改它 搜索 RUN: start Without Debugging 并将快捷方式更改为您想要的内容。 它非常简单,适合我(我的 VSCode 版本是 1.51,但有新更新可用)。

  1. 首先你需要安装一个名为“Code Runner”的扩展程序
  2. 然后查看 Visual Studio 代码的右上角,您将看到 运行 按钮和 打那个。
  3. 之后你会在vs代码的底部看到你的代码已经被执行了。
  4. 您可以为“Code Runner”创建自己的键盘快捷键,以加快您的编码速度。

如果您为 VSCode 安装 Python 语言扩展,它还会默认安装 Jupyter 和 Pylance,这让您可以 运行 Python 以交互方式编写代码。

您只需在要交互执行的代码前使用 # %%

只要你插入 # %%,你就可以看到 VSCode 为你创建了一个新的 Jupyter Cell。

从那里您可以单击 Run Cell 单元格菜单,您可以看到结果。

因此,您只需在 VSCode、

中输入以下代码
# %%
text = 'Hello World from inline interactive Python'
print(text)

有一种最简单的方法可以为 run in terminal 命令创建快捷方式:

  1. 单击左侧栏中的设置图标。
  2. 然后点击Keyboard Shortcuts
  3. 在顶部的搜索栏中粘贴 python.execInTerminal
  4. 现在双击 Python: Run Python File in Terminal 命令对面的 Keybinding 列并设置快捷方式。

我使用现有的 anaconda 环境 运行 python。而不是使用 python 用户 appdata\local\programs\python 通过环境使用 anaconda 安装 python。这将使您能够访问环境中的所有库。

 1. View->Command Palette->Open user settings
 2. search python
 a. Python: default interpreter path = c:\users\yourname\Anaconda3\python.exe
 b. save the file
 3. View->Command Palette->python:select interpreter
 a. arrow down to your workspace name
 b. select your python and environment

 create a python script and run it.

 see https://code.visualstudio.com/docs/python/environments
  • Press F5 to run with Debugging
  • Press Ctrl+F5 to run with Debugging ignoring breakpoints.

运行当前 python 文件默认没有关联的键绑定,但您可以通过以下方式设置:

  1. Ctrl+Shift+P
  2. 在终端输入“运行 Python 文件”
  3. 将鼠标悬停在它上面并单击 ⚙️ 图标
  4. 双击“键绑定”
  5. 设置您想要的快捷方式