在本教程中,你将使用Python 3在Visual Studio Code 中创建最简单的Python“Hello World”应用程序。通过使用Python扩展,你可以将VS Code 配置成一个非常轻量级的Python IDE(你可以使用PyCharm作为高效的替代品)。
本教程向你介绍Python环境的VS Code,主要介绍如何通过以下任务进行编辑、运行和调试代码:
本教程并不打算教你Python本身。一旦你熟悉了VS Code 的基础,你就可以在VS Code 中学习programming tutorials on python.org 上的任何编程教程。
如果你有任何问题,请访问 VS Code documentation repository
注意:你可以在本教程中使用Python 2,但是你需要对代码进行适当的更改,这里不涉及这些更改。
要成功完成本教程,你需要首先设置Python开发环境。具体来说,本教程要求:
除了Python扩展之外,你还需要安装一个Python解释器。你使用哪种解释器取决于你的具体需要,但是下面提供了一些指导。
从python.org安装Python。你通常可以使用页面上第一个出现的Download Python按钮来下载最新版本。
注意:如果你没有管理员权限,在Windows上安装Python的另一个选项是使用Microsoft Store。微软商店提供Python 3.7和Python 3.8的安装。请注意,你可能会与使用此方法的某些包存在兼容性问题。
有关Windows上Python的更多信息,请参见在Windows上使用 Python
在macOS上不支持安装Python系统。相反,建议通过自制安装。要在macOS上使用自制程序安装Python,请在终端提示符处使用brew install python3
。
注意,在macOS上,确保在PATH环境变量中包含VS Code安装的位置。有关更多信息,请参见这些设置说明。
Linux上内置的Python 3安装工作得很好,但是要安装其他Python包,必须用get-pip.py
安装pip
。
要验证已经在你的机器上成功安装了Python,请运行以下命令之一(取决于你的操作系统):
python3 --version
python3 -3 --version
如果安装成功,输出窗口应该显示你安装的Python版本。
注意,你可以在VS Code集成终端中使用
py -0
命令查看安装在你的机器上的python版本。默认解释器由星号(*)标识。
在命令提示符或终端,创建一个名为“hello”的空文件夹,导航到其中,并打开VS Code (Code
)在该文件夹(.
)中,输入以下命令:
mkdir hello
cd hello
code .
注意:如果你使用的是Anaconda分发版,请确保使用Anaconda命令提示符。
通过在一个文件夹中启动VS Code,该文件夹将成为你的“工作空间”。VS Code在.vscode/settings.json
中存储特定于该工作区的设置,它独立于全局存储的用户设置。
或者,你可以通过操作系统UI运行VS Code,然后使用File > Open Folder来打开项目文件夹。
Python是一种解释语言,为了运行Python代码,你必须告诉VS Code使用哪个解释器。
从VS Code中,选择一个Python 3解释器通过打开命令面板(⇧⌘P
),开始键入Python:Select Interpreter命令来搜索,然后选择这个命令。你也可以使用状态栏上的Select Python Environment选项(它可能已经显示了一个选择的解释器):
该命令提供VS Code 可以自动找到的可用解释器列表,包括虚拟环境。如果你没有看到所需的解释器,请参阅配置Python环境。
注意:当使用Anaconda时,正确的解释器应该有后缀
('base':conda)
, 例如Python 3.7.3 64-bit ('base':conda)
.
选择解释器后,将为工作区配置中的python.pythonPath值设置为解释器的路径。要查看设置,请选择File
> Preferences
> Settings
(Code
> Preferences
> Settings
on macOS),选择Workspace Settings
选项卡。
注意:如果你选择打开一个没有解释器的工作区文件夹,VS Code会在你的用户设置中的
python.pythonPath
设置成VS Code默认解释器,确保Python项目始终有一个默认的解释器。工作区设置允许你覆盖用户设置。
从File Explorer工具栏中,选择hello
文件夹上的New File按钮:
将文件命名为hello.py
,它会在编辑器中自动打开:
通过使用.py文件扩展名,你可以告诉VS Code将该文件解释为Python程序,这样它就可以使用Python扩展名和所选的解释器来运行代码。
注意:File Explorer工具栏还允许你在工作区中创建文件夹,以便更好地组织代码。可以使用
New folder
按钮快速创建文件夹。
现在你的工作空间中已经有了一个代码文件,在hello.py中输入以下源代码:
msg = "Hello World"
print(msg)
当你开始键入print
时,请注意智能感知是如何显示自动完成选项的。
智能感知和自动补全适用于标准Python模块以及你已经安装到所选Python解释器环境中的其他包。它还提供对象类型上可用的方法的补全。例如,因为msg
变量包含一个字符串,所以当你输入msg.
时,智能感知会提供字符串方法。
随时体验与智能感知更多的功能,现在撤销你的更改,只是print
变量,并保存文件(⌘ S
)。 有关编辑、格式化和重构的详细信息,请参阅编辑代码。Python扩展也完全支持Linting。
用Python运行hello.py很简单。只需单击编辑器右上角的终端播放按钮中的Run Python文件。
该按钮打开一个终端面板,在其中你的Python解释器被自动激活,然后运行python3 hello.py
(macOS/Linux)或Python hello.py
(Windows):
有三种其他方式,你可以运行Python的VS Code:
Shift+Enter
或右键单击,选择Run Selection/Line in Python Terminal。这个命令对于测试文件的一部分很方便。⇧⌘P
),选择Python: Start REPL命令在当前选中的Python解释器中打开一个REPL终端。在REPL中,你可以一次输入并运行一行代码。现在让我们尝试调试简单的Hello World程序。
首先,在hello.py
的第2行设置一个断点,方法是将光标放在print
调用上并按下F9。或者,只需单击编辑器左侧的行号旁边。当你设置断点时,一个红色的圆圈出现在边栏中。
接下来,要初始化调试器,请按F5
。因为这是你第一次调试这个文件,所以将从命令面板中打开一个配置菜单,允许你为打开的文件选择你想要的调试配置类型。
注意:VS Code的所有配置都使用JSON文件。
launch.json
是包含调试配置的文件名称。
这些不同的配置在调试配置中得到了充分的解释;现在,只需选择Python File,它是使用当前选择的Python解释器运行编辑器中显示的当前文件的配置。
调试器将在文件断点的第一行停止。当前行在左边的空白处用一个黄色箭头表示。如果此时检查局部变量窗口,你将看到现在已定义的msg变量出现在局部窗格中。
一个调试工具栏出现在顶部,以下命令从左到右:继续(F5
),跨过(F10
)进入(F11
),跳出(⇧F11
),重启(⇧⌘F5
),和停止(⇧F5
)。
状态栏也会改变颜色(在许多主题中为橙色),以指示你处于调试模式。Python Debug Console
也会自动出现在右下角的面板中,以显示正在运行的命令以及程序输出。
要继续运行程序,请选择debug工具栏上的continue命令(F5
)。调试器将程序运行到最后。
技巧:调试信息也可以通过在代码上悬停来查看,比如变量。对于
msg
,将鼠标悬停在变量上将在变量上方的框中显示字符串Hello world
。
你还可以在Debug Console中使用变量(如果你没有看到它,请选择VS Code右下角的Debug Console中,或者从…菜单。)然后,在控制台底部的>提示符中,一个接一个地输入以下行:
msg
msg.capitalize()
msg.split()
再次选择工具栏上的蓝色Continue按钮(或按F5)以运行程序直至完成。如果切换回Python Debug Console,则会出现“Hello World”,程序完成后VS Code 退出调试模式。
如果重新启动调试器,调试器将在第一个断点处再次停止。
停止运行一个程序完成之前,使用调试工具栏上的红场停止按钮(⇧F5
),或者使用Debug > Stop debugging菜单命令。
有关详细信息,请参阅调试配置,其中包括关于如何使用特定的Python解释器进行调试的说明。
提示:使用Logpoints而不是print语句:开发人员经常在源代码中使用
现在让我们运行一个更有趣的例子。在Python中,包是获取任意数量的有用代码库的方式,通常从PyPI获取。对于本例,你将使用matplotlib
和numpy
包来创建图形图表,就像通常使用数据科学所做的那样。(注意,matplotlib
在Windows Subsystem for Linux中运行时不能显示图形,因为它缺乏必要的UI支持。)
返回资源管理器视图(左侧最上面的图标,显示文件),创建一个名为standardplot.py
的新文件。,并粘贴在以下源代码:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 20, 100) # Create a list of evenly-spaced numbers over the range
plt.plot(x, np.sin(x)) # Plot the sine of each x point
plt.show() # Display the plot
提示:如果你手动输入上述代码,你可能会发现,当你在一行的末尾按回车键时,自动补全将更改
as
关键字后面的名称。要避免这种情况,请键入空格
,然后回车。
接下来,使用上一节中描述的“Python: Current file”配置在调试器中运行该文件。
除非你使用的是Anaconda发行版,或者之前已经安装了matplotlib
包,否则应该会看到这样一条消息**“ModuleNotFoundError: No module named ‘matplotlib’”**。这样的消息表明所需的包在系统中不可用。
安装matplotlib
包(也安装numpy
依赖性),停止调试器,使用命令面板运行终端:Terminal: Create New Integrated Terminal(⌃⇧'
))。此命令为你选择的解释器打开一个命令提示符。
Python开发人员的最佳实践是避免将包安装到全局解释器环境中。而是使用包含全局解释器副本的特定于项目的虚拟环境。一旦激活该环境,然后安装的任何包都将与其他环境隔离。这种隔离减少了许多可能由冲突的包版本引起的复杂性。要创建虚拟环境并安装所需的包,请输入适合你的操作系统的以下命令:
注意:有关虚拟环境的更多信息,请参见环境。
py -3 -m venv .venv
.venv\scripts\activate
如果激活命令生成消息"Activate.ps1 is not digitally signed. You cannot run this script on the current system.",你需要临时更改PowerShell执行策略以允许脚本运行(有关执行策略,请参阅PowerShell文档)
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
python3 -m venv .venv
source .venv/bin/activate
# Don't use with Anaconda distributions because they include matplotlib already.
# macOS
python3 -m pip install matplotlib
# Windows (may require elevation)
python -m pip install matplotlib
# Linux (Debian)
apt-get install python3-tk
python3 -m pip install matplotlib
deactivate
以关闭虚拟环境。有关创建和激活虚拟环境以及安装包的更多示例,请参阅Django教程和Flask教程。
你可以配置VS Code来使用你安装的任何Python环境,包括虚拟环境和conda环境。还可以使用单独的环境进行调试。有关详细信息,请参见环境。
要了解更多关于Python语言的知识,请参阅programming tutorials 在python.org上的任何编程教程。
要学习使用Django和Flask框架构建web应用程序,请参阅以下教程:
然后,在Visual Studio Code 中有更多关于Python的探索: