如何在VsCode代码中的做Python开发

Visual Studio Code是程序员可用的最酷的代码编辑器之一,是一个可在所有平台上使用的开源,可扩展,轻量级编辑器。正是这些品质使微软的 Visual Studio Code 非常受欢迎,并成为Python开发的绝佳平台。

在本文中,您将学习Visual Studio Code中的Python开发,包括如何:

安装Visual Studio代码
发现并安装使Python开发变得简单的扩展
编写一个简单的Python应用程序
了解如何在VS Code中运行和调试现有的Python程序
将Visual Studio代码连接到Git和GitHub以与全世界共享您的代码

我们假设您熟悉Python开发,并且已经在您的系统上安装了某种形式的Python(Python 2.7,Python 3.6 / 3.7,Anaconda或其他)。提供了Ubuntu和Windows的屏幕截图和演示。由于Visual Studio Code在所有主要平台上运行,因此您可能会看到稍微不同的UI元素,并且可能需要修改某些命令。

免费奖励: 关于Python掌握的5个想法,Python开发人员的免费课程,向您展示将Python技能提升到新水平所需的路线图和思维模式。

为Python开发安装和配置Visual Studio代码

在任何平台上都可以安装Visual Studio代码。可以获得Windows,Mac和Linux的完整说明,并且每月更新编辑器,其中包含新功能和错误修复。您可以在Visual Studio Code网站上找到所有内容:

如果您想知道,Visual Studio Code(或简称VS代码)几乎没有其他名称与其基于Windows的较大的同名Visual Studio共享。

Visual Studio Code内置了对多种语言的支持,以及具有丰富生态系统支持的扩展模型。VS Code每月更新一次,您可以在Microsoft Python博客上了解最新信息。微软甚至可以让任何人克隆和贡献VS Code GitHub仓库。(提示公关洪水。)

该VS代码UI是有据可查的,所以我不会在这里老调重弹吧:
如何在VsCode代码中的做Python开发

Python开发的扩展

如上所述,VS Code通过详细记录的扩展模型支持多种编程语言的开发。在Python扩展使Python开发在Visual Studio代码,具有以下特点:

扫描二维码关注公众号,回复: 10445533 查看本文章
支持Python 3.4及更高版本,以及Python 2.7
使用IntelliSense完成代码
掉毛
调试支持
代码片段
单元测试支持
自动使用conda和虚拟环境
Jupyter环境和Jupyter笔记本中的代码编辑

Visual Studio代码扩展不仅涵盖编程语言功能:

Keymaps允许已熟悉Atom,Sublime Text,Emacs,Vim,PyCharm或其他环境的用户感到宾至如归。
主题是自定义UI,无论您喜欢在明亮,黑暗或更丰富多彩的地方进行编码。
语言包提供本地化体验。

以下是我认为有用的一些其他扩展和设置:

GitLens直接在您的编辑窗口中提供了大量有用的Git功能,包括责备注释和存储库探索功能。
通过
File, Auto Save
从菜单中选择,可以轻松打开自动保存。默认延迟时间为1000毫秒,也是可配置的。
Settings Sync允许您使用GitHub在不同的安装中同步VS Code设置。如果您在不同的计算机上工作,这有助于保持您的环境一致。
泊坞窗可以让你快速,方便地与码头工人工作,帮助作者Dockerfile和docker-compose.yml,打包和部署您的项目,甚至产生适当的泊坞文件为您的项目。

当然,在使用VS Code时,您可能会发现其他有用的扩展。请在评论中分享您的发现和设置!

单击活动栏上的“ 扩展”图标可以访问发现和安装新扩展和主题。您可以使用关键字搜索扩展程序,以多种方式对结果进行排序,以及快速轻松地安装扩展程序。对于本文,通过python在活动栏上键入Extensions项并单击Install来安装 Python扩展:

您可以以相同的方式查找和安装上述任何扩展。

Visual Studio代码配置文件

值得一提的是,Visual Studio Code可通过用户和工作区设置进行高度配置。

用户设置在所有Visual Studio代码实例中是全局的,而工作空间设置是特定文件夹或项目工作空间的本地设置。工作区设置为VS Code提供了很大的灵活性,我在整篇文章中都提到了工作区设置。工作区设置作为.json文件存储在调用的项目工作区本地的文件夹中.vscode。

启动一个新的Python程序

让我们开始使用新的Python程序探索Visual Studio Code中的Python开发。在VS Code中,键入+以打开新文件。(您也可以从菜单中选择“ 文件”,“新建 ”。)

注意: Visual Studio代码UI提供命令选项板,您无需离开键盘即可从中搜索和执行任何命令。使用+ +打开命令调色板,键入File: New File,然后单击以打开新文件。

无论你如何到达那里,你都应该看到一个类似于以下内容的VS Code窗口:
如何在VsCode代码中的做Python开发

打开新文件后,您可以输入代码。

输入Python代码

对于我们的测试代码,让我们快速编写Eratosthenes筛选器(它可以找到小于给定数量的所有质数)。开始在刚刚打开的新选项卡中键入以下代码:

sieve = [True] * 101

for i in range(2, 100):

你应该看到类似的东西:

等等,发生了什么事?为什么Visual Studio Code不进行任何关键字突出显示,任何自动格式化或任何真正有用的东西?是什么赋予了?

答案是,现在,VS Code不知道它正在处理什么类型的文件。调用缓冲区Untitled-1,如果你查看窗口的右下角,你会看到单词纯文本。

要激活Python扩展,请保存文件(通过选择File,Save from the menu,File:Save Filefrom the Command Palette,或者只使用+)as sieve.py。VS Code将看到.py扩展并将文件正确解释为Python代码。现在你的窗口应该是这样的:

那好多了!VS Code会自动将文件重新格式化为Python,您可以通过检查左下角的语言模式来验证。

如果您有多个Python安装(如Python 2.7,Python 3.x或Anaconda),您可以通过单击语言模式指示器或选择Python来更改VS Code使用的Python解释器:从命令选项板中选择Interpreter。VS代码支持的格式使用pep8

默认,但你可以选择black或者yapf如果你想。

我们现在添加其余的Sieve代码。要在工作中查看IntelliSense,请直接键入此代码而不是剪切和粘贴,您应该看到如下内容:
如何在VsCode代码中的做Python开发

这是Eratosthenes基本筛选的完整代码:

sieve = [True] * 101

for i in range(2, 100):

if sieve[i]:

print(i)

for j in range(i*i, 100, i):

sieve[j] = False

当您键入此代码时,VS Code会自动缩进下面的行

for和if语句,添加右括号,并为您提供建议。这就是IntelliSense为您服务的力量。

运行Python代码

现在代码已经完成,您可以运行它。没有必要让编辑器执行此操作:Visual Studio Code可以直接在编辑器中运行此程序。保存文件(使用+),然后在编辑器窗口中右键单击并选择在终端中运行Python文件:

您应该会看到终端窗格显示在窗口的底部,并显示您的代码输出。

Python Linting支持

您可能在键入时看到弹出窗口,说明linting不可用。您可以从弹出窗口快速安装linting支持,默认为PyLint。VS Code还支持其他短信。这是撰写本文时的完整列表:

pylint
flake8
mypy
pydocstyle
pep8
prospector
pyllama
bandit

在Python的掉毛页有关于如何设置每个棉短绒的完整细节。

注意:linter的选择是项目工作空间设置,而不是全局用户设置。

编辑现有的Python项目

在Eratosthenes的Sieve示例中,您创建了一个Python文件。这很好,作为一个例子,但很多时候,你会创建更大的项目,并在更长的时间内处理它们。典型的新项目工作流程可能如下所示:

创建一个文件夹来保存项目(可能包含一个新的GitHub项目)
切换到新文件夹
使用该命令创建初始Python代码
code filename.py

在Python项目上使用Visual Studio Code(而不是单个Python文件)开辟了更多功能,让VS Code真正发挥作用。让我们来看看它如何与更大的项目一起工作。

在上一个千禧年的晚些时候,当我还是一个更年轻的程序员时,我编写了一个计算器程序,使用Edsger Dijkstra的调车码算法改编的方法解析用中缀符号编写的方程式。

为了演示Visual Studio Code的以项目为中心的功能,我开始在Python中重新创建分流码算法作为方程式评估库。要继续关注,请随意在本地克隆回购。

在本地创建文件夹后,您可以快速打开VS Code中的整个文件夹。我的首选方法(如上所述)修改如下,因为我已经创建了文件夹和基本文件:

cd / path / to / project代码。

VS代码的理解,并会使用,任何的virtualenv,pipenv,或畅达打开这种方式,当它看到的环境。您甚至不需要首先启动虚拟环境!您甚至可以使用文件,菜单中的“ 打开文件夹 ”,键盘上的+,+或命令选项板中的“ 文件:打开文件夹”从UI 打开文件夹。

对于我的方程式eval库项目,这是我看到的:

当Visual Studio代码打开文件夹时,它还会打开您上次打开的文件。(这是可配置的。)您可以打开,编辑,运行和调试列出的任何文件。左侧活动栏中的资源管理器视图为您提供文件夹中所有文件的视图,并显示当前选项卡集中存在多少未保存文件。

测试支持

如果在当前环境中安装了这些框架,VS Code可以自动识别在框架中编写的现有Python测试unittest,pytest或者Nose框架。我为等式eval库编写了一个单元测试unittest,您可以将其用于此示例。

要从项目中的任何Python文件运行现有的单元测试,请右键单击并选择“运行当前单元测试文件”。系统将提示您指定测试框架,在项目中搜索测试的位置以及测试使用的文件名模式。

所有这些都保存为本地

.vscode/settings.json

文件中的工作区设置,并可在此处进行修改。对于此等式项目,您可以选择unittest当前文件夹和模式*_test.py

设置测试框架并发现测试后,可以通过单击状态栏上的“ 运行测试 ”并从“命令选项板”中选择一个选项来运行所有测试:

您甚至可以通过在VS代码中打开测试文件,单击状态栏上的运行测试,然后选择运行单元测试方法…以及要运行的特定测试来运行单个测试。这使得解决单个测试失败并重新运行失败的测试变得微不足道,这是一个巨大的节省时间!测试结果显示在Python Test Log下的Output窗格中。

调试支持

即使VS Code是代码编辑器,也可以直接在VS Code中调试Python。VS Code提供了许多您期望从良好的代码调试器中获得的功能,包括:

自动变量跟踪
观看表达式
断点
调用堆栈检查

您可以在活动栏上的Debug视图中看到它们:

调试器可以控制在内置终端或外部终端实例中运行的Python应用程序。它可以附加到已经运行的Python实例,甚至可以调试Django和Flask应用程序。

在单个Python文件中调试代码就像启动调试器一样简单。您可以分别使用和跳过函数,然后使用+退出调试器。通过单击编辑器窗口中的左边距来设置断点,或使用鼠标设置断点。

在开始调试更复杂的项目(包括Django或Flask应用程序)之前,需要先设置然后选择调试配置。设置调试配置相对简单。从Debug视图中,选择Configuration下拉列表,然后选择Add Configuration,并选择Python:

Visual Studio Code将在当前文件夹下创建一个调试配置文件,该文件

.vscode/launch.json

允许您设置特定的Python配置以及调试特定应用程序的设置,如Django和Flask。

您甚至可以执行远程调试,并调试Jinja和Django模板。

launch.json

在编辑器中关闭该文件,然后从“ 配置”下拉列表中为您的应用程序选择正确的配置。

Git集成

VS Code内置了对源代码管理的支持,并且开箱即用,支持Git和GitHub。您可以在VS Code中安装对其他SCM的支持,并将它们并排使用。可以从“ 源代码管理”视图访问源代码管理:

如果您的项目文件夹包含一个.git文件夹,VS Code会自动打开所有Git / GitHub功能。以下是您可以执行的许多任务:

将文件提交给Git
将更改推送到远程存储库并从中取出更改
签出现有或创建新的分支和标签
查看并解决合并冲突
查看差异

所有这些功能都可以直接从VS Code UI获得:

VS Code还将识别在编辑器外部进行的更改并且行为正确。

在VS Code中提交最近的更改是一个相当简单的过程。修改后的文件显示在“ 源代码管理”视图中,带有M标记,而新的未跟踪文件则使用U标记。通过将鼠标悬停在文件上然后单击加号(+)来暂停更改。在视图顶部添加提交消息,然后单击复选标记以提交更改:

您也可以从VS Code中将本地提交推送到GitHub。从“ 源代码管理”视图菜单中选择“ 同步” ,或单击分支指示器旁边状态栏上的“ 同步更改 ” 。

结论

Visual Studio Code是最酷的通用编辑器之一,也是Python开发的理想选择。在本文中,您了解到:

如何在任何平台上安装VS Code
如何查找和安装扩展以启用特定于Python的功能
VS Code如何使编写简单的Python应用程序变得更容易
如何在VS Code中运行和调试现有的Python程序
如何使用VS Code中的Git和GitHub存储库

Visual Studio Code已成为我的Python和其他任务的默认编辑器,我希望你也有机会成为你的。

发布了0 篇原创文章 · 获赞 0 · 访问量 640

猜你喜欢

转载自blog.csdn.net/weixin_46303424/article/details/105225352