Visual Studio Code 中的 Python
在Visual Studio Code中使用Python,通过Microsoft Python扩展,既简单又有趣且高效。该扩展使VS Code成为一个优秀的Python编辑器,并且可以在任何操作系统上与多种Python解释器一起工作。它利用VS Code的所有功能,提供自动完成和IntelliSense、代码检查、调试和单元测试,以及轻松在Python环境之间切换的能力,包括虚拟环境和conda环境。
本文仅概述了VS Code的Python扩展的不同功能。要了解编辑、运行和调试代码的详细步骤,请使用下面的按钮。
安装Python和Python扩展
该教程将指导您安装Python并使用扩展。您必须自己单独安装Python解释器,而不是通过扩展安装。为了快速安装,请使用Python from python.org和从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: Select Interpreter)。要运行当前的Python文件,点击编辑器右上角的Run Python File播放按钮。
你也可以使用Python: 在Python终端中运行选择/行命令(Shift+Enter)来运行单行或选中的代码。如果没有选择,智能发送会将光标所在行周围的最小可运行代码块发送到Python终端(Shift+Enter)。在编辑器中选中内容时,上下文菜单中也有一个相同的运行Python > 在Python终端中运行选择/行命令。每次在终端/REPL中运行选择或行时,都会使用同一个终端,直到该终端关闭。同一个终端也用于在终端中运行Python文件。如果该终端仍在运行REPL,你应该退出REPL(exit()
)或在运行Python文件之前切换到另一个终端。
Python扩展会根据选择的第一行非空行自动移除缩进,并根据需要将所有其他行向左移动。
该命令在必要时打开Python终端;你也可以直接使用Python: Start Terminal REPL命令打开交互式REPL环境,该命令会激活一个带有当前选择解释器的终端,然后运行Python REPL。
有关更具体的演练和其他运行代码的方法,请参阅运行代码教程。
自动补全和智能感知
Python 扩展支持使用当前选择的解释器进行代码补全和智能感知。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 的信息。
代码检查
Linting 分析您的 Python 代码以查找潜在错误,使您可以轻松导航并纠正不同的问题。
Python 扩展可以应用多种不同的 linter,包括 Pylint、pycodestyle、Flake8、mypy、pydocstyle、prospector 和 pylama。请参阅 Linting。
调试
不再需要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 notebook文件(.ipynb
)的Python支持,你可以安装Jupyter扩展。Python和Jupyter扩展共同工作,为你在VS Code中提供出色的Notebook体验,使你能够直接查看和修改带有IntelliSense支持的代码单元,以及运行和调试它们。
你也可以通过Jupyter: 导出为Python脚本命令将笔记本转换并打开为Python代码文件。笔记本的单元格在Python文件中用#%%
注释分隔,Jupyter扩展显示运行单元格或在下方运行的CodeLens。选择任一CodeLens将启动Jupyter服务器并在Python交互窗口中运行单元格:
您还可以连接到远程的Jupyter服务器来运行您的笔记本。有关更多信息,请参阅Jupyter支持。
测试
Python 扩展支持使用 Python 内置的 unittest 框架和 pytest 进行测试。
为了运行测试,您必须在项目的设置中启用一个受支持的测试框架。每个框架都有其特定的设置,例如用于识别测试发现路径和模式的参数。
一旦测试被发现,VS Code 提供了多种命令(在状态栏、命令面板和其他地方)来运行和调试测试。这些命令还允许您运行单个测试文件和方法
配置
Python 扩展为其各种功能提供了多种设置。这些设置在其相关主题中有所描述,例如编辑代码、代码检查、调试和测试。完整的列表可以在设置参考中找到。
Python 配置文件模板
Profiles 让您能够根据当前项目或任务快速切换扩展、设置和用户界面布局。为了帮助您开始Python开发,您可以使用Python配置文件模板,这是一个精选的配置文件,包含有用的扩展、设置和代码片段。您可以直接使用此配置文件模板,或将其作为起点,进一步自定义以适应您自己的工作流程。
您通过Profiles > Create Profile...下拉菜单选择一个配置文件模板:
一旦你选择了一个配置文件模板,你可以查看设置和扩展,并且如果你不想将它们包含在你的新配置文件中,可以移除个别项目。基于模板创建新配置文件后,对设置、扩展或用户界面的更改将保存在你的配置文件中。
其他流行的Python扩展
Microsoft Python 扩展 提供了本文中描述的所有功能。通过安装其他流行的 Python 扩展,可以为 VS Code 添加更多的 Python 语言支持。
- 打开扩展视图 (⇧⌘X (Windows, Linux Ctrl+Shift+X)).
- 通过输入'python'来过滤扩展列表。
上面显示的扩展是动态查询的。点击上面的扩展磁贴以阅读描述和评论,以决定哪个扩展最适合您。在Marketplace中查看更多。
下一步
- Python Hello World 教程 - 在 VS Code 中开始使用 Python。
- Editing Python - 了解Python的自动补全、格式化和重构。
- Basic Editing - 了解强大的VS Code编辑器。
- Code Navigation - 快速浏览您的源代码。
- Django 教程
- Flask 教程