VS Code Python 入门指南

在本教程中,你将学习如何在 Visual Studio Code 中使用 Python 3 创建、运行和调试一个“掷骰子!”应用程序,以及如何使用虚拟环境、包等!通过使用 Python 扩展,你可以将 VS Code 变成一个功能强大且轻量级的 Python 编辑器。

如果你是编程新手,请查看 Visual Studio Code 教育版 - Python 入门课程。该课程提供了 Python 的全面介绍,在基于浏览器的就绪开发环境中采用结构化模块进行教学。

若要深入了解 Python 语言,你可以浏览 python.org 上列出的任何 编程教程,并结合 VS Code 进行实践。

有关 Python 数据科学相关的教程,请查看我们的 数据科学章节

先决条件

要顺利完成本教程,你需要先设置好 Python 开发环境。具体而言,本教程需要:

安装 Python 解释器

除了 Python 扩展,你还需要安装一个 Python 解释器。具体使用哪个解释器取决于你的个人需求,以下提供了一些指导。

Windows

python.org 安装 Python。请使用页面上最显眼的 Download Python 按钮下载最新版本。

注意:如果你没有管理员权限,在 Windows 上安装 Python 的另一个选择是使用 Microsoft Store。Microsoft Store 提供了受支持的 Python 版本安装包。

有关在 Windows 上使用 Python 的更多信息,请参阅 Python.org 上的 在 Windows 上使用 Python

macOS

macOS 自带的 Python 系统安装不受支持。建议使用 Homebrew 等包管理系统。若要在 macOS 上使用 Homebrew 安装 Python,请在终端提示符下执行 brew install python3

注意:在 macOS 上,请确保 VS Code 的安装位置包含在你的 PATH 环境变量中。有关更多信息,请参阅这些设置说明

Linux

Linux 内置的 Python 3 安装运行良好,但要安装其他 Python 包,你必须使用 get-pip.py 安装 pip

其他选项

  • 数据科学:如果使用 Python 的主要目的是数据科学,你可以考虑从 Anaconda 下载。Anaconda 不仅提供了 Python 解释器,还包含许多对数据科学有用的库和工具。

  • 适用于 Linux 的 Windows 子系统 (WSL):如果你在 Windows 上工作,并且希望有一个用于使用 Python 的 Linux 环境,WSL 是一个不错的选择。如果选择此选项,你还需要安装 WSL 扩展。有关在 VS Code 中使用 WSL 的更多信息,请参阅 VS Code 远程开发 或尝试 在 WSL 中工作教程,该教程将引导你完成设置 WSL、安装 Python 以及创建在 WSL 中运行的 Hello World 应用程序。

注意:要验证是否在机器上成功安装了 Python,请运行以下命令之一(取决于你的操作系统):

Linux/macOS:打开终端窗口并输入以下命令

python3 --version

Windows:打开命令提示符并运行以下命令

py -3 --version

如果安装成功,输出窗口应显示你安装的 Python 版本。或者,你可以在 VS Code 集成终端中使用 py -0 命令查看机器上安装的 Python 版本。默认解释器由星号 (*) 标识。

在工作区文件夹中启动 VS Code

通过在文件夹中启动 VS Code,该文件夹即成为你的“工作区”。

使用命令提示符或终端,创建一个名为“hello”的空文件夹,导航至该文件夹,并通过输入以下命令在该文件夹 (.) 中打开 VS Code (code):

mkdir hello
cd hello
code .

注意:如果你使用 Anaconda 发行版,请确保使用 Anaconda 命令提示符。

或者,你可以通过操作系统的界面创建文件夹,然后使用 VS Code 的 文件 > 打开文件夹 来打开项目文件夹。

创建虚拟环境

Python 开发者的最佳实践是使用特定于项目的 虚拟环境。激活该环境后,你安装的所有包都将与其他环境(包括全局解释器环境)隔离,从而减少因包版本冲突而导致的诸多复杂问题。你可以在 VS Code 中使用 Venv 或 Anaconda 通过 Python: 创建环境 命令创建非全局环境。

打开命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P)),开始输入 Python: Create Environment 命令进行搜索,然后选择该命令。

该命令会显示环境类型列表,如 Venv 或 Conda。在此示例中,选择 Venv

Create Environment dropdown

然后,该命令会列出可用于你项目的解释器。选择你在教程开头安装的解释器。

Virtual environment interpreter selection

选择解释器后,通知栏将显示环境创建进度,并且环境文件夹 (/.venv) 将出现在你的工作区中。

Create environment status notification

使用 命令面板 中的 Python: Select Interpreter 命令,确保已选中你的新环境。

Select an Interpreter

注意:有关虚拟环境的更多信息,或者如果你在环境创建过程中遇到错误,请参阅 环境

创建 Python 源代码文件

从文件资源管理器工具栏中,选择 hello 文件夹上的 新建文件 按钮。

File Explorer New File

将文件命名为 hello.py,VS Code 会自动在编辑器中将其打开。

File Explorer hello.py

通过使用 .py 文件扩展名,你告诉 VS Code 将此文件解释为 Python 程序,以便它使用 Python 扩展和所选解释器来评估其内容。

注意:文件资源管理器工具栏还允许你在工作区内创建文件夹,以便更好地组织代码。你可以使用 新建文件夹 按钮快速创建文件夹。

现在你的工作区中已有一个代码文件,请在 hello.py 中输入以下源代码:

msg = "Roll a dice!"
print(msg)

当你开始输入 print 时,请注意 IntelliSense 如何提供自动补全选项。

IntelliSense appearing for Python code

IntelliSense 和自动补全适用于标准 Python 模块以及你安装到所选 Python 解释器环境中的其他包。它还为对象类型上可用的方法提供补全。例如,因为 msg 变量包含一个字符串,当你输入 msg. 时,IntelliSense 会提供字符串方法。

IntelliSense appearing for a variable whose type provides methods

最后,保存文件(⌘S (Windows, Linux Ctrl+S))。至此,你已准备好在 VS Code 中运行第一个 Python 文件。

有关编辑、格式化和重构的完整详细信息,请参阅 编辑代码。Python 扩展还全面支持 Linting(代码检查)

运行 Python 代码

点击编辑器右上角的 运行 Python 文件 播放按钮。

Using the Run Python File button

该按钮会打开一个终端面板,自动激活你的 Python 解释器,然后运行 python3 hello.py (macOS/Linux) 或 python hello.py (Windows)。

Program output in a Python terminal

还有其他三种在 VS Code 中运行 Python 代码的方法:

  1. 在编辑器窗口的任意位置右键单击,然后选择 Run Python > Run Python File in Terminal(这会自动保存文件)。

    Run Python File in Terminal command in the Python editor

  2. 选择一行或多行代码,然后按 Shift+Enter,或者右键单击并选择 Run Python > Run Selection/Line in Python Terminal。或者,你可以在不选中任何内容的情况下使用 Shift+Enter 激活“智能发送 (Smart Send)”,Python 扩展会将光标附近最小的可运行代码块发送到终端。此命令对于仅测试文件的一部分非常方便。

    注意:如果你更喜欢发送光标所在行的代码,可以通过在 用户 设置中将 python.REPL.enableREPLSmartSend : "false" 设置为关闭,从而禁用智能发送。

  3. 从命令面板(⇧⌘P (Windows, Linux Ctrl+Shift+P))中,选择 Python: Start Terminal REPL 命令,为当前选定的 Python 解释器打开一个 REPL 终端(由 >>> 标记)。在 REPL 中,你可以一次输入并运行一行代码。

恭喜,你刚刚在 Visual Studio Code 中运行了第一段 Python 代码!

配置并运行调试器

现在让我们尝试调试 Python 程序。调试支持由 Python Debugger 扩展 提供,该扩展会随 Python 扩展自动安装。要确保它已正确安装,请打开 扩展 视图(⇧⌘X (Windows, Linux Ctrl+Shift+X))并搜索 @installed python debugger。你应该能在结果中看到 Python Debugger 扩展。

Python Debugger extension shown in installed extensions view in VS Code.

接下来,通过将光标置于 print 调用上并按 F9,在 hello.py 的第 2 行设置断点。或者,点击编辑器左侧边栏(行号旁边)。设置断点后,边栏会出现一个红圈。

Setting a breakpoint in hello.py

接下来,按 F5 初始化调试器。由于这是你第一次调试此文件,将从命令面板打开一个配置菜单,允许你为打开的文件选择所需的调试配置类型。

List of Python debugger configuration options

注意:VS Code 使用 JSON 文件进行各种配置;launch.json 是包含调试配置的标准文件名。

选择 Python File,该配置将使用当前选定的 Python 解释器运行编辑器中显示的文件。

调试器将启动,然后在文件断点的第一行停止。当前行在左侧边栏由黄色箭头指示。此时,如果你查看 本地 变量窗口,可以看到 msg 变量出现在 本地 面板中。

Debugging step 2 - variable defined

顶部会出现一个调试工具栏,包含以下命令(从左到右):继续 (F5)、单步跳过 (F10)、单步调试 (F11)、单步跳出 (⇧F11 (Windows, Linux Shift+F11))、重启 (⇧⌘F5 (Windows, Linux Ctrl+Shift+F5)) 和停止 (⇧F5 (Windows, Linux Shift+F5))。

Debugging toolbar

状态栏的颜色也会改变(在许多主题中为橙色),以指示你处于调试模式。Python 调试控制台 也会自动出现在右下角面板中,显示正在运行的命令以及程序输出。

要继续运行程序,请在调试工具栏上选择“继续”命令 (F5)。调试器会将程序运行到底。

提示:通过将鼠标悬停在代码(例如变量)上,也可以查看调试信息。以 msg 为例,将鼠标悬停在变量上,变量上方的框中会显示字符串 Roll a dice!

你还可以使用 调试控制台 处理变量(如果看不到,请选择 VS Code 右下角的 调试控制台,或从 ... 菜单中选择)。然后尝试在控制台底部的 > 提示符后逐行输入以下行:

msg
msg.capitalize()
msg.split()

Debugging step 3 - using the debug console

再次选择工具栏上的蓝色 继续 按钮(或按 F5)将程序运行结束。如果切换回 Python 调试控制台,“Roll a dice!” 将会显示出来,且程序完成后,VS Code 将退出调试模式。

如果你重启调试器,调试器会再次在第一个断点处停止。

要在此程序运行完成前停止它,请使用调试工具栏上的红色方形停止按钮 (⇧F5 (Windows, Linux Shift+F5)),或使用 运行 > 停止调试 菜单命令。

有关完整详细信息,请参阅 调试配置,其中包含有关如何使用特定 Python 解释器进行调试的说明。

提示:使用日志点 (Logpoints) 代替 print 语句:开发人员经常在源代码中散布 print 语句,以便在不一定要在调试器中逐行执行代码的情况下快速检查变量。在 VS Code 中,你可以改为使用 Logpoints。Logpoint 类似于断点,只是它会将一条消息记录到控制台,而不会停止程序。有关更多信息,请参阅主 VS Code 调试文章中的 Logpoints

安装并使用包

让我们通过使用包来扩展前面的示例。

在 Python 中,包是你获取任意数量有用代码库的方式,这些库通常来自 PyPI,它们为你的程序提供了额外的功能。在此示例中,你将使用 numpy 包来生成随机数。

返回 资源管理器 视图(左侧最顶部的图标,显示文件),打开 hello.py,并粘贴以下源代码:

import numpy as np

msg = "Roll a dice!"
print(msg)

print(np.random.randint(1,9))

提示:如果你手动输入上述代码,你可能会发现在按下 as 关键字末尾的 Enter 键后,自动补全会更改名称。为避免这种情况,请键入一个空格,然后按 Enter

接下来,使用上一节中描述的“Python: Current file”配置在调试器中运行该文件。

你应该会看到 "ModuleNotFoundError: No module named 'numpy'" 的错误消息。此消息表示你的解释器中没有所需的包。如果你使用的是 Anaconda 发行版或之前已安装过 numpy 包,则可能不会看到此消息。

要安装 numpy 包,请停止调试器并使用以下方法之一:

选项 1:使用包管理 UI

  1. 打开 Python 侧边栏并展开 环境管理器
  2. 右键单击你的环境并选择 管理包
  3. 搜索 numpy 并选择 安装

选项 2:使用终端

从命令面板运行 Terminal: Create New Terminal (⌃⇧` (Windows, Linux Ctrl+Shift+`))。此命令会为你的选定解释器打开一个命令提示符。

要在虚拟环境中安装所需的包,请根据你的操作系统输入以下相应命令:

# Don't use with Anaconda distributions because they include matplotlib already.

# macOS
python3 -m pip install numpy

# Windows (may require elevation)
python -m pip install numpy

# Linux (Debian)
apt-get install python3-tk
python3 -m pip install numpy

现在,重新运行程序(无论是否使用调试器)来查看输出!

跨环境管理依赖项

在进行 Python 项目开发时,有效地管理依赖项至关重要。一个有用的技巧是使用 pip freeze > requirements.txt 命令。此命令可帮助你创建一个 requirements.txt 文件,其中列出了你虚拟环境中安装的所有包。此文件稍后可用于在其他地方重新创建相同的环境。

提示

当你使用 Python: Create Environment 或环境管理器视图中的 + 按钮创建新环境时,扩展会自动检测并安装工作区中存在的 requirements.txtpyproject.toml 中的依赖项。

请按照以下步骤创建 requirements.txt 文件:

  1. 激活你的虚拟环境(如果尚未激活)。

    source venv/bin/activate  # On macOS/Linux
    
    .\venv\Scripts\activate   # On Windows
    
  2. 生成 requirements.txt 文件。

    pip freeze > requirements.txt
    

你现在可以使用新生成的 requirements.txt 文件在另一个环境中安装依赖项。此外,随着项目复杂性的增加,你可以继续向其中添加依赖项。

pip install -r requirements.txt

通过遵循这些步骤,你可以确保项目依赖项在不同环境中保持一致,从而更轻松地与他人协作并部署你的项目。

恭喜你完成了 Python 教程!在本教程中,你学习了如何创建 Python 项目、创建虚拟环境、运行和调试 Python 代码以及安装 Python 包。探索更多资源,学习如何充分利用 Visual Studio Code 中的 Python!

后续步骤

若要学习如何使用流行的 Python Web 框架构建 Web 应用程序,请参阅以下教程:

Visual Studio Code 中的 Python 还有更多值得探索的内容:

© . This site is unofficial and not affiliated with Microsoft.