打造高效Python开发环境:Visual Studio Code的配置指南

前言

Visual Studio Code是最多功能的代码编辑器之一。尽管它是一个代码编辑器,但其强大的可扩展性使其几乎与JetBrains的一些产品一样强大。

在本文中,我将为你介绍如何配置Visual Studio Code,以进行Python开发。这并不是一个通用的设置,但这是我个人使用的配置,我发现它非常舒适。

安装扩展插件

第一步是在计算机上安装Visual Studio Code。我目前使用arch,已经准备好编辑器。特定于平台的安装说明可以在文档中找到。arch安装Visual Studio Code:

# 安装GPG Key

sudo pacman -S archlinuxcn-keyring

# 安装yay

sudo pacman -S yay

#安装Visual Studio Code

yay -S visual-studio-code-insiders-bin

其它版本请查阅arch相关文档:https://wiki.archlinuxcn.org/wiki/Visual_Studio_Code

d2b5ca33bd085439

假设你已经完成安装步骤,现在我将向你介绍一组必要的扩展,将提升你的Python开发体验。

Python扩展

首先需要安装的扩展是来自Microsoft的Python扩展。

这实际上是一个包含两个扩展的扩展包。第一个扩展是Python扩展,为在Visual Studio Code中进行Python开发奠定了基础。

d2b5ca33bd090543

另一个是Pylance,它是一个针对Python的高性能语言服务器。

d2b5ca33bd090743

这个扩展提供了丰富的智能感知支持,并由Microsoft的静态类型检查器Pyright提供支持。接下来,你需要考虑代码检查。

Ruff Linter

d2b5ca33bd092936

代码检查是一种分析代码的程序,它提供可能错误的有价值的洞察。

Pylance扩展在你的代码中找到致命错误方面表现出色,但代码不仅仅有这些。

在开发大型项目时,很常见在代码库中留下不需要的混乱。例如未使用的导入和变量、不良的代码实践等等。

一个好的代码检查工具可以指出这些问题,并让你的代码更加干净。在Python代码检查方面,Pylint是一个常用的选择。

Pylint已经存在很长时间,并且工作相当不错,但我认为有一个更好的替代方案。

Ruff是一个用Rust编写的非常快速的Python代码检查工具,它比Pylint强制执行更严格的代码检查规则。该工具还有一个官方的扩展。

这是一个即插即用的扩展,不需要任何额外的配置。安装后,你可以开始使用它了。

Isort

d2b5ca33bd093244

与代码检查器类似,isort是另一个工具,其唯一目的是对导入语句进行排序。

该工具会将所有导入语句按字母顺序排列,并将它们分成几个部分。

这个扩展非常简单。安装后,如果有任何不恰当的导入语句,它会在这些语句下方显示波浪线。

你可以使用快速操作菜单对它们进行排序。或者,你也可以使用命令面板快速访问isort命令。

Mypy Type Checker

d2b5ca33bd093448

在开始讨论这个扩展之前,让我解释一下mypy是什么。

根据它们主页上的信息:

Mypy是一个可选的Python静态类型检查器,旨在将动态(或“鸭子”)类型和静态类型的优点结合在一起。 Mypy结合了Python的表达能力和便利性与强大的类型系统和编译时类型检查。
简单地说,mypy强制你为Python程序添加必要的类型注释,使它们更易于理解。

最近,Microsoft发布了一个扩展,利用mypy为他们喜爱的编辑器添加了类型检查功能。

安装该扩展后,它将对你的代码进行必要的检查,并将任何缺少的类型注释报告为编译时错误。

虽然类型注释不是强制性的,但强烈推荐使用。

IntelliCode

d2b5ca33bd093655

IntelliCode在Visual Studio Code中提供了基于AI的代码补全。听起来可能与GitHub Copilot相似,但实际上比后者小得多。

在大多数情况下,该扩展可以通过建议正确的内容来帮助你少输入相同的代码,并在不妨碍你的情况下完成代码行。

Indent Rainbow

d2b5ca33bd093838

与其他编程语言不同,Python中不正确的缩进水平可能会导致程序出错。

Visual Studio Code已经很好地可视化了代码中的缩进级别,但如果你想为其添加一些颜色,indent-rainbow包就是你需要的。

它为不同级别的缩进添加了不同的颜色。个人而言,我并不经常使用这个扩展,但你可能会发现它有用。

结论

正如我所说的,这些扩展和我的个人配置并不是万能的。但这个配置是我使用已经有一段时间的,我希望它对你也有用。

我经常根据我所做的项目安装特定的扩展。例如,我在开发Django或Flask项目时使用Django或Jinja项目。

或者在使用Jupyter Notebook时安装Jupyter扩展。所以请随意安装你需要的扩展,但不要过度使用。

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容