Visual Studio Code 中的 Python
在 Visual Studio Code 中使用 Python,使用 Microsoft Python 扩展,既简单、有趣又高效。该扩展使 VS Code 成为出色的 Python 编辑器,并且可以在任何操作系统上与各种 Python 解释器一起使用。它利用 VS Code 的所有功能来提供自动完成和 IntelliSense、Lint、调试和单元测试,以及轻松在 Python 环境(包括虚拟环境和 conda 环境)之间切换的能力。
本文仅概述了适用于 VS Code 的 Python 扩展的不同功能。有关编辑、运行和调试代码的演练,请使用下面的按钮。
安装 Python 和 Python 扩展
教程指导您完成安装 Python 和使用扩展的过程。您必须自行安装 Python 解释器,与扩展分开。为了快速安装,请使用 来自 python.org 的 Python 和 从 VS Code Marketplace 安装扩展。
注意:为了帮助您开始 Python 开发,您可以使用 Python 配置文件模板,其中包括有用的扩展、设置和 Python 代码片段。
安装 Python 版本后,使用 Python: 选择解释器 命令选择它。如果 VS Code 没有自动找到您要查找的解释器,请参阅 环境 - 手动指定解释器。
您可以通过设置配置 Python 扩展。在 Python 设置参考中了解更多信息。
Windows Subsystem for Linux:如果您使用的是 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 的更多信息。
Lint
Lint 分析您的 Python 代码是否存在潜在错误,从而可以轻松导航到并纠正不同的问题。
Python 扩展可以应用许多不同的 Lint 工具,包括 Pylint、pycodestyle、Flake8、mypy、pydocstyle、prospector 和 pylama。请参阅 Lint。
调试
不再需要 print
语句调试!VS Code 通过 Python 调试器扩展为 Python 提供出色的调试支持,使您可以设置断点、检查变量,并使用调试控制台深入了解程序的逐步执行过程。调试多种不同类型的 Python 应用程序,包括多线程、Web 和远程应用程序。
有关 Python 调试的更具体信息,例如配置您的 launch.json
设置和实现远程调试,请参阅 调试。常规 VS Code 调试信息可在 调试文档中找到。
此外,Django 和 Flask 教程提供了如何在 Web 应用程序的上下文中实现调试的示例,包括调试 Django 模板。
环境
Python 扩展会自动检测安装在标准位置的 Python 解释器。它还检测工作区文件夹中的 conda 环境以及虚拟环境。请参阅 配置 Python 环境。
当前环境显示在 VS Code 状态栏的右侧
状态栏还指示是否未选择解释器
所选环境用于 IntelliSense、自动完成、Lint、格式化以及任何其他与语言相关的功能。当您在终端中运行或调试 Python,或者当您使用 终端: 创建新终端 命令创建新终端时,它也会被激活。
要更改当前解释器(包括切换到 conda 或虚拟环境),请选择状态栏上的解释器名称或使用 Python: 选择解释器 命令。
VS Code 会提示您显示检测到的环境列表以及您手动添加到用户设置中的任何环境(请参阅 配置 Python 环境)。
Jupyter Notebook
要启用 VS Code 中对 Jupyter Notebook 文件 (.ipynb
) 的 Python 支持,您可以安装 Jupyter 扩展。Python 和 Jupyter 扩展协同工作,为您在 VS Code 中提供出色的 Notebook 体验,使您能够直接查看和修改具有 IntelliSense 支持的代码单元格,以及运行和调试它们。
您还可以通过 Jupyter: 导出到 Python 脚本 命令将 Notebook 转换为 Python 代码文件并打开。Notebook 的单元格在 Python 文件中用 #%%
注释分隔,Jupyter 扩展显示 运行单元格 或 运行下方单元格 CodeLens。选择任一 CodeLens 都会启动 Jupyter 服务器并在 Python 交互窗口中运行单元格。
您还可以连接到远程 Jupyter 服务器以运行您的 Notebook。有关更多信息,请参阅 Jupyter 支持。
测试
Python 扩展支持使用 Python 内置的 unittest 框架和 pytest 进行测试。
为了运行测试,您必须在项目的设置中启用受支持的测试框架之一。每个框架都有其自己的特定设置,例如用于识别测试发现的路径和模式的参数。
发现测试后,VS Code 会提供各种命令(在状态栏、命令面板和其他位置)来运行和调试测试。这些命令还允许您运行单个测试文件和方法
配置
Python 扩展为其各种功能提供了各种设置。这些设置在其相关主题中进行了描述,例如 编辑代码、Lint、调试 和 测试。完整列表可在 设置参考中找到。
Python 配置文件模板
配置文件 让您可以根据当前项目或任务快速切换您的扩展、设置和 UI 布局。为了帮助您开始 Python 开发,您可以使用 Python 配置文件模板,这是一个包含有用的扩展、设置和代码片段的精选配置文件。您可以按原样使用配置文件模板,也可以将其用作起点,以便为您自己的工作流程进一步自定义。
您可以通过 配置文件 > 创建配置文件... 下拉列表选择配置文件模板
选择配置文件模板后,您可以查看设置和扩展,如果您不想将单个项目包含在新的配置文件中,则可以删除它们。在基于模板创建新配置文件后,对设置、扩展或 UI 所做的更改将保存在您的配置文件中。
其他常用的 Python 扩展
Microsoft Python 扩展 提供了本文前面描述的所有功能。可以通过安装其他流行的 Python 扩展将额外的 Python 语言支持添加到 VS Code。
- 打开 扩展 视图 (⇧⌘X (Windows, Linux Ctrl+Shift+X))。
- 通过键入“python”来筛选扩展列表。
上面显示的扩展是动态查询的。单击上面的扩展磁贴以阅读描述和评论,以决定哪个扩展最适合您。在 Marketplace 中查看更多内容。