Visual Studio Code 中的 Python
使用 Microsoft Python 扩展在 Visual Studio Code 中使用 Python 既简单、有趣又高效。该扩展使 VS Code 成为一个出色的 Python 编辑器,可在任何操作系统上使用各种 Python 解释器运行。它利用了 VS Code 的所有强大功能,提供了自动完成和 IntelliSense、代码检查、调试和单元测试,以及轻松切换 Python 环境的能力,包括虚拟环境和 conda 环境。
本文仅概述了 VS Code 中 Python 扩展的不同功能。有关编辑、运行和调试代码的演练,请使用下面的按钮。
安装 Python 和 Python 扩展
该教程将指导您完成安装 Python 和使用扩展的过程。您必须单独从扩展程序中安装 Python 解释器。对于快速安装,请使用 来自 python.org 的 Python 并从 VS Code Marketplace 安装扩展。
注意:为了帮助您开始 Python 开发,您可以使用Python 配置文件模板,其中包含有用的扩展、设置和 Python 代码片段。
安装了某个 Python 版本后,使用Python: 选择解释器命令选择它。如果 VS Code 未能自动找到您要查找的解释器,请参阅环境 - 手动指定解释器。
您可以通过设置来配置 Python 扩展。请在Python 设置参考中了解更多信息。
适用于 Linux 的 Windows 子系统:如果您使用的是 Windows,WSL 是进行 Python 开发的绝佳方式。您可以在 Windows 上运行 Linux 发行版,并且 Python 通常已经安装。当与 WSL 扩展结合使用时,您可以在 WSL 环境中获得完整的 VS Code 编辑和调试支持。要了解更多信息,请访问在 WSL 中开发或尝试在 WSL 中工作教程。
运行 Python 代码
要体验 Python,请创建一个名为 hello.py 的文件(使用 文件资源管理器)并将以下代码粘贴进去
print("Hello World")
然后,Python 扩展会提供快捷方式,使用当前选定的解释器(在命令面板中为Python: 选择解释器)来运行 Python 代码。要运行活动的 Python 文件,请单击编辑器右上角的运行 Python 文件播放按钮。

您还可以使用Python: 在 Python 终端中运行选定内容/行命令(Shift+Enter)来运行单行或选定的代码。如果没有选定内容,智能发送会将光标所在行的最小可运行代码块发送到 Python 终端(Shift+Enter)。在编辑器的选定内容上下文菜单上,有一个相同的运行 Python > 在 Python 终端中运行选定内容/行命令。每次在终端/REPL 中运行选定内容或一行代码时,都会使用相同的终端,直到关闭该终端为止。在终端中运行 Python 文件也会使用相同的终端。如果该终端仍在运行 REPL,您应该退出 REPL (exit()) 或切换到另一个终端,然后再运行 Python 文件。
Python 扩展会自动根据选定内容的第一个非空行删除缩进,并根据需要将所有其他行向左移动。
该命令会在必要时打开 Python 终端;您也可以使用Python: 启动终端 REPL命令直接打开交互式 REPL 环境,该命令会激活一个使用当前选定解释器的终端,然后运行 Python REPL。
有关更具体的演练和其他运行代码的方法,请参阅运行代码教程。
自动完成和 IntelliSense
Python 扩展使用当前选定的解释器支持代码完成和 IntelliSense。IntelliSense 是许多功能的总称,包括在所有文件以及内置和第三方模块中进行智能代码完成(上下文方法和变量建议)。
IntelliSense 会在您输入时快速显示方法、类成员和文档。您也可以随时使用 ⌃Space (Windows, Linux Ctrl+Space) 触发完成。将鼠标悬停在标识符上会显示有关它们的更多信息。

使用 AI 增强补全
GitHub Copilot 是一款由 AI 驱动的代码补全工具,可以帮助你更快、更智能地编写代码。你可以在 VS Code 中使用 GitHub Copilot 扩展来生成代码,或从其生成的代码中学习。
GitHub Copilot 为 Python 之外的语言以及各种框架提供建议,包括 JavaScript、TypeScript、Ruby、Go、C# 和 C++。
你可以在Copilot 文档中了解更多关于如何开始使用 Copilot 的信息。
代码检查
代码检查可分析您的 Python 代码中的潜在错误,使您能够轻松导航到并更正不同的问题。
Python 扩展可以应用许多不同的代码检查工具,包括 Pylint、pycodestyle、Flake8、mypy、pydocstyle、prospector 和 pylama。请参阅代码检查。
调试
不再需要 print 语句调试!VS Code 通过Python 调试器扩展为 Python 提供了出色的调试支持,让您可以设置断点、检查变量,并使用调试控制台深入了解程序的逐步执行情况。调试多种不同类型的 Python 应用程序,包括多线程、Web 和远程应用程序。
有关 Python 调试的更具体信息,例如配置 launch.json 设置和实现远程调试,请参阅调试。有关常规 VS Code 调试信息,请参阅调试文档。
此外,Django 和 Flask 教程提供了有关如何在 Web 应用程序环境中实现调试的示例,包括调试 Django 模板。
环境
Python 扩展会自动检测安装在标准位置的 Python 解释器。它还会检测工作区文件夹中的 conda 环境以及虚拟环境。请参阅配置 Python 环境。
当前环境显示在 VS Code 状态栏的右侧

状态栏还会指示是否未选择任何解释器

选定的环境用于 IntelliSense、自动完成、代码检查、格式化以及任何其他与语言相关的特性。当您在终端中运行或调试 Python,或者使用终端: 创建新终端命令创建新终端时,它也会被激活。
要更改当前解释器,包括切换到 conda 或虚拟环境,请选择状态栏上的解释器名称或使用Python: 选择解释器命令。

VS Code 会向您显示检测到的环境列表,以及您已手动添加到用户设置中的任何环境(请参阅配置 Python 环境)。
Jupyter 笔记本
要在 VS Code 中启用对 Jupyter 笔记本文件 (.ipynb) 的 Python 支持,您可以安装Jupyter 扩展。Python 和 Jupyter 扩展协同工作,在 VS Code 中为您提供出色的笔记本体验,使您能够直接使用 IntelliSense 支持查看和修改代码单元格,以及运行和调试它们。

您还可以通过Jupyter: 导出到 Python 脚本命令将笔记本转换为 Python 代码文件并打开它。笔记本的单元格在 Python 文件中用 #%% 注释分隔,Jupyter 扩展会显示运行单元格或运行以下代码CodeLens。选择任一 CodeLens 都会启动 Jupyter 服务器并在 Python 交互式窗口中运行单元格。

您还可以连接到远程 Jupyter 服务器来运行您的笔记本。有关更多信息,请参阅Jupyter 支持。
测试
Python 扩展支持使用 Python 内置的 unittest 框架和 pytest 进行测试。
为了运行测试,您必须在项目的设置中启用受支持的测试框架之一。每个框架都有自己的特定设置,例如用于识别测试发现路径和模式的参数。
测试被发现后,VS Code 会提供各种命令(在状态栏、命令面板和其他地方)来运行和调试测试。这些命令还允许您运行单个测试文件和方法
配置
Python 扩展为其各种功能提供广泛的设置。这些功能在其相关主题中有所描述,例如编辑代码、代码检查、调试和测试。完整列表可以在设置参考中找到。
Python 配置文件模板
配置文件允许您根据当前项目或任务快速切换扩展、设置和 UI 布局。为了帮助您开始 Python 开发,您可以使用Python 配置文件模板,这是一个精选的配置文件,包含有用的扩展、设置和代码片段。您可以按原样使用配置文件模板,也可以将其用作起点,根据您的工作流程进一步定制。
您通过“**配置文件**”>“**创建配置文件...**”下拉菜单选择一个配置文件模板

选择配置文件模板后,您可以查看设置和扩展,并删除单个项目(如果您不想将其包含在新配置文件中)。基于模板创建新配置文件后,对设置、扩展或 UI 所做的更改将保存在您的配置文件中。
其他流行的 Python 扩展
Microsoft Python 扩展提供了本文中描述的所有功能。可以通过安装其他流行的 Python 扩展向 VS Code 添加额外的 Python 语言支持。
- 打开扩展视图(⇧⌘X (Windows, Linux Ctrl+Shift+X))。
- 通过键入“python”来过滤扩展列表。
上面显示的扩展是动态查询的。单击上方的扩展磁贴以阅读描述和评论,以决定哪个扩展最适合您。有关更多信息,请参阅Marketplace。
