现已发布!阅读关于 11 月新增功能和修复的内容。

在 VS Code 中开始使用 Python

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

如果你是编程新手,请查看Visual Studio Code for Education - Python 简介课程。本课程提供了 Python 的全面介绍,在基于浏览器的即时编码开发环境中包含结构化模块。

要更深入地了解 Python 语言,你可以在 VS Code 的上下文中探索 python.org 上列出的任何编程教程

对于以数据科学为重点的 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 子系统:如果你在 Windows 上工作并且需要一个用于使用 Python 的 Linux 环境,适用于 Linux 的 Windows 子系统 (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 命令提示符。

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

创建虚拟环境

Python 开发人员的最佳实践是使用特定于项目的 virtual environment。一旦你激活了该环境,你随后安装的任何包都将与包括全局解释器环境在内的其他环境隔离,从而减少因包版本冲突而引起的许多复杂问题。你可以在 VS Code 中使用 Venv 或 Anaconda 通过 Python: Create Environment 创建非全局环境。

打开命令面板 (⇧⌘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 扩展还完全支持代码检查

运行 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. 在编辑器窗口中的任意位置右键单击,然后选择 运行 Python > 在终端中运行 Python 文件(这会自动保存文件)

    Run Python File in Terminal command in the Python editor

  2. 选择一行或多行,然后按 Shift+Enter 或右键单击并选择 运行 Python > 在 Python 终端中运行选定内容/行。或者,你可以在没有选择的情况下使用 Shift+Enter 激活智能发送,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)以运行程序直到完成。“Roll a dice!”会出现在Python 调试控制台中(如果你切换回它),并且程序完成后 VS Code 会退出调试模式。

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

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

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

提示:使用日志点而不是 print 语句:开发人员经常在源代码中散布 print 语句,以便快速检查变量,而不必在调试器中单步执行每行代码。在 VS Code 中,你可以改为使用日志点。日志点类似于断点,不同之处在于它会将消息记录到控制台并且不会停止程序。有关更多信息,请参阅 VS Code 主要调试文章中的日志点

安装和使用包

让我们通过使用包来完善前面的示例。

在 Python 中,包是你获取许多有用代码库(通常来自 PyPI)的方式,这些库为你的程序提供了额外的功能。对于此示例,你将使用 numpy 包生成一个随机数。

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

import numpy as np

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

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

提示:如果你手动输入上述代码,你可能会发现在行尾按 Enter 时,自动完成会更改 as 关键字后面的名称。为避免这种情况,请先按空格,然后按 Enter

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

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

要安装 numpy 包,请停止调试器并使用命令面板运行 Terminal: Create New Terminal (⌃⇧` (Windows, Linux Ctrl+Shift+`))。此命令会为选定的解释器打开一个命令提示符。

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

  1. 安装包

    # 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
    
  2. 现在,运行程序,无论是否使用调试器,以查看输出!

管理跨环境的依赖项

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

按照以下步骤创建 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.