VSCode配置Python以及扩展

news2024/10/7 10:24:41

无论您是经验丰富的开发人员还是刚刚开始编码冒险,正确设置 VS Code 都可能是将您的技能提升到新水平的秘诀。因此,让我们深入探索在 Visual Studio Code 的虚拟墙内打造崇高编码天堂的艺术!

为什么选择 VS 代码?

VS Code 已成为 Python 开发中最受欢迎的代码编辑器之一,这有几个充分的理由。以下是在 Python 开发中使用 VS Code 的一些令人信服的论据:

  • 轻量级代码编辑器启动速度快,非常适合想要无缝编码体验且无需占用大量资源的开发人员。
  • 可在多个平台上使用,包括 Windows、macOS 和 Linux。
  • 拥有广泛的扩展生态系统。
  • 内置调试器,可与 Python 无缝协作。
  • 支持各种 Python 格式化程序和 linter。
  • 与 Git 等版本控制系统完美集成。
  • 内置终端。
  • 直观的用户界面。
  • 庞大而活跃的开发者社区。

在本文中,我们将探讨如何安装 VSCode,然后将其定制为 Python 开发的强大工具。

安装

在本节中,我们将讨论安装 VS Code。从此处的官方网站下载并运行安装程序。请在此处查看我们的完整指南,了解特定于系统的说明。

如何编辑设置

现在,让我们看看如何修改设置。这可能与您以前使用过的程序不同。

在 VS Code 中,有两个主要选项用于编辑设置:图形用户界面 (GUI) 和文件settings.json。每个选项都具有独特的优势,可以满足不同的偏好和用例。

设置.json 文件:

settings.json文件是一个纯文本 JSON 文件,用于存储 Visual Studio Code 的所有配置设置。它是 GUI 设置修改的底层配置文件。您可以跳过 GUI 并直接编辑此文件。

要通过文件编辑设置settings.json

  1. Ctrl + Shift + P(Windows/Linux) 或Cmd + Shift + P(Mac) 打开命令面板。
  2. 键入“用户设置”并从命令列表中选择 JSON 选项。

请记住命令面板,因为我们将在本指南中大量使用它。

图形用户界面(GUI):

GUI方法允许用户通过VS Code界面修改设置,而无需直接与底层JSON配置文件交互。

要访问 GUI 设置,请单击 VS Code 窗口左下角的齿轮图标。如果您是键盘快捷键爱好者,请使用快捷键Ctrl + ,(Windows/Linux) 或Cmd + ,(Mac)。

本指南使用该settings.json方法,但可以通过搜索我们提供的密钥在 GUI 中找到每个项目。例如,要在 GUI 中查找标尺,您可以搜索“editor.rulers”。

主题

在本节中,我们将了解主题以及如何调整 VS Code 的视觉样式。为 VS Code 选择视觉主题可能看起来只是为了让你的编辑器看起来更漂亮。事实上,这是一个重要的决定,会对整体开发体验和生产力产生重大影响。以下是选择合适的视觉主题至关重要的几个原因:

  1. 减少眼睛疲劳:精心设计的视觉主题以及适当的颜色选择、对比度和语法突出显示可以减少长时间编码过程中的眼睛疲劳。
  2. 提高代码可读性:视觉主题在增强代码可读性方面发挥着关键作用。主题可以清晰地区分各种代码元素(例如关键字、函数、变量和注释),使代码更容易一目了然。
  3. 个性化和动机:视觉主题允许开发人员创建一个与他们的个性和偏好产生共鸣的环境。具有视觉吸引力和个性化的编码空间可以增强动力并激发创造力,使编码会议更具吸引力和乐趣。
  4. 可访问性和包容性:选择考虑颜色对比度和可读性的可访问主题对于确保包容性至关重要。满足不同需求(包括有视觉障碍或色盲的开发人员的需求)的主题可以营造包容性的编码环境。

在 VS Code 中浏览主题有时可能会令人沮丧,因为没有可以快速浏览的库。相反,您必须找到每个主题并在扩展市场中打开它。我们发现VS Code 主题提供了一种快速浏览可供选择的各种颜色主题的精美方式。

我们喜欢 One Dark Pro。然而,找到一个适合您需求的主题对您来说是多么重要,这一点怎么形容都不为过。

选择主题后,您可以选择它,然后选择 VS Code 按钮。这将在扩展市场中打开主题扩展。

从市场页面选择安装。安装后,主题将自动启用。

有些主题提供多种选项。在这里您可以看到 One Dark Pro 有 4 种不同的颜色主题可供选择。

您也可以在 中进行设置settings.json

添加该workbench.colorTheme密钥,VS Code 将显示可供选择的主题列表。如果您想选择已安装的不同主题,可以从命令选项板中执行此操作。

打开命令调色板并输入“颜色主题”。选择首选项:颜色主题选项。当然,您也可以在settings.json.

我们建议进行一些小调整,以使您的编辑器更易于理解。请随意使用您认为有用的任何内容。这些选项

window.zoomLevel将 UI 比例设置得足够小,以容纳大量内容,但又足够大,以便清晰可见。您可以在 macOS 上使用Cmd +和,或者在 Windows 和 Linux 上使用 和 进行放大和缩小。Cmd -Ctl +Ctl -

workbench.tree.indent向文件资源管理器树添加更多水平插入。这使得查看嵌套内容变得更容易。

editor.minimap.renderCharacters使小地图显示形状线而不是实际文本。说实话,没有人在阅读小地图文本。

editor.minimap.size调整小地图的大小,使其可用但不会占用大量空间。

files.autoSave会自动保存您最近修改过的文件。您可以将其设置为在更改选项卡、更改窗口或延迟后保存。如果您选择延迟选项,则必须设置files.autoSaveDelay为秒数。

editor.cursorStyleeditor.cursorBlinking控制您使用的光标类型。我们更喜欢老式的块和块轮廓选项。

Ruler

标尺充当微妙的指南,防止代码过于庞大,从而鼓励简洁性和可读性。在 VS Code 环境中拥抱统治者的力量,使您能够编写干净、组织良好的代码,这些代码不仅符合行业标准,而且让您和您的开发人员同事一起工作成为一种乐趣。因此,让您的代码沿着标尺优雅地跳舞,并见证这个看似微小的添加如何对项目的整体优雅和专业性产生重大影响。

向 VS Code 添加标尺是一个简单的过程。打开settings.json并添加以下行:

在这里,我们使用 88,因为这与我们将在本文后面讨论的黑色格式化程序一致。如果您的 linter 或格式化程序更喜欢不同的行长度,则使用该值。如果您想要多个标尺,也可以这样做:

结果是选定线长度的垂直线。

linter

linter 是一个重要的工具,在提高代码的整体质量和可维护性方面发挥着至关重要的作用。它通过分析代码中的潜在错误、样式不一致和语法问题,帮助您遵守 Python 编码标准和最佳实践。通过在编写代码时实时突出显示这些问题,linter 可以帮助您在开发过程的早期识别和纠正错误,减少引入错误的机会并增强代码库的可读性。使用 linter 不仅可以在团队中促进更清晰、更标准化的编码实践,还有助于提高协作效率,使其成为任何在 VS Code 环境中使用 Python 的 Django 开发人员不可或缺的工具。

linter 的选项数量不断增加。以下是一些最受欢迎的:

Flake 8

  • pylint
  • ruff

我们偏爱拉夫。它比其他 linter 快 100 倍,支持最新版本的 Python,并且具有与 Flake8 几乎相同的规则。当然,如果您偏爱另一个 linter,请使用它。大部分配置都是相似的。

设置 Ruff 再简单不过了。只需从此处的市场安装 Ruff 扩展即可。它立即开始工作。无论您选择哪种 linter,都将以下内容添加到settings.json.

这两个选项将在您保存文件时启用 linting。通过我们的测试,我们发现了一些 Ruff 特有的配置选项,可以提高我们的工作效率。我们来看看这些。

进口自动分拣

PEP8风格指南详细介绍了如何组织导入。这有助于保持代码的可读性和可维护性。自动排序将首先按源(例如标准库、第三方、本地应用程序)构建您的 Python 导入,然后在这些部分中按字母顺序排列。

editor.codeActionsOnSave通过将该部分添加到 中的 Python 作用域来启用它settings.json

这里可以看到之前导入排序的例子:

之后:

自动修复违规行为

只有修复代码中的违规行为,才能发现它们。您必须对每一项采取行动。Ruff 提供了一种自动修复违规行为的方法。source.fixAll通过将密钥添加到editor.codeActionsOnSavePython 作用域的部分来启用它。

在这里您可以看到自动修复违规的示例。Ruff 识别该类Post已导入但未使用。

Ruff 通过删除Post导入来解决这个问题。

格式化

代码格式化程序是一种根据预定义的编码风格和约定分析并自动重组源代码的工具。它的目的是在不改变代码功能的情况下实现代码布局、缩进、换行和其他格式方面的一致性。通过在整个项目中强制执行一致的代码样式,格式化程序可以增强代码的可读性,使其更易于理解,并最大限度地减少因格式不一致而导致的潜在错误。

就像 linter 一样,有许多格式化程序可供选择。以下是一些最受欢迎的:

  • BLACK
  • YAPF
  • AutoPep8

我们更喜欢黑色的风格选择。Black 的方法遵循“不妥协的代码格式化程序”的原则,并且因其生成高度可读的一致代码的能力而获得广泛认可。

例如,黑方使用 88 个字符的行长度。这与使用 80 个字符的其他格式化程序形成对比。使用 10% 长的限制的决定会对文件长度产生巨大影响。它还允许减少换行,从而产生更具可读性的代码。像这样的小而有影响力的选择使黑色成为我们发展的一个简单选择。一如既往,选择符合您需求的格式化程序。

黑色扩展可以在这里找到。像安装任何其他扩展一样安装它。安装后,打开settings.json这两个选项并将其添加到您的 python 范围中。

这些行将默认格式化程序设置为黑色并在保存时启用格式。这意味着 Black 仅在您保存文件时才会格式化您的代码。

git

VS Code 与 git 等版本控制系统的集成非常好。只需安装 git 就足以让编辑器发挥其魔力。如果您需要安装 git,请查看git 本身提供的指南。设置完成后,您的主侧栏将有一个源代码控制按钮。

主侧边栏的源代码控制按钮。

结论

您现在拥有一个完全配置的 VS Code,具有华丽的颜色主题、linting、格式,并安装了一些有用的扩展,使您的编码时间更加高效和愉快!通过利用 Visual Studio Code 的强大功能及其多功能配置,开发人员可以充分发挥潜力,并将 Python 开发提升到新的高度。随着开发环境的不断发展,VS Code 的适应性和丰富的功能无疑将使其保持在现代编码环境的最前沿,使开发人员能够轻松编写干净、高效且健壮的 Python 应用程序。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/971209.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

探索iVX:颠覆传统低代码平台的新潮流

🤵‍♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞&#x1f4…

判断对象是否发生变化,常用于监听页面表单是否修改并给出保存提示

本文主要封装方法,实现用户离开表单编辑页面时弹出提示框,若表单数据发生变化,则提示用户是否保存当前页面的信息,如图: 封装方法: /*** 比较俩个对象之间的差异,项目中多处用到监听表单数据是…

一文入门Web网站安全测试

文章目录 Web网页安全风险评估1. 数据泄漏2. 恶意软件传播3. 身份伪装和欺诈 测试Web网页的安全性常见方法和工具漏洞扫描器手动漏洞测试漏洞利用工具Web应用程序防火墙(WAF)测试渗透测试代码审查社会工程学测试 推荐阅读 Web网页安全风险评估 越来越多…

L1-058 6翻了(Python实现) 测试点全过

前言: {\color{Blue}前言:} 前言: 本系列题使用的是,“PTA中的团体程序设计天梯赛——练习集”的题库,难度有L1、L2、L3三个等级,分别对应团体程序设计天梯赛的三个难度。更新取决于题目的难度,…

ROS通信机制之动作(Action)服务的实践

1、动作概述 讲完了 服务 之后,接下来就是通信的第三种机制,动作。在上节我们知道服务的应用场景是需要在有限时间内完成,而对于一些比较复杂的任务,需要耗时比较长,甚至是不确定时间的时候,就需要用到动作…

20.添加HTTP模块

添加一个简单的静态HTTP。 这里默认读者是熟悉http协议的。 来看看http请求Request的例子 客户端发送一个HTTP请求到服务器的请求消息,其包括:请求行、请求头部、空行、请求数据。 HTTP之响应消息Response 服务器接收并处理客户端发过来的请求后会返…

尚硅谷SpringMVC (9-13)

九、HttpMessageConverter HttpMessageConverter ,报文信息转换器,将请求报文转换为 Java 对象,或将 Java 对象转换为响应报文 HttpMessageConverter提供了两个注解和两个类型: RequestBody , ResponseBody &#xff…

如何创建美观的邮件模板并通过qq邮箱的SMTP服务向用户发送

最近在写注册功能的自动发送邮箱告知验证码的功能,无奈根本没有学过前端,只有写Qt的qss基础,只好借助网页设计自己想要的邮箱格式,最终效果如下: 也推销一下自己的项目ShaderLab,可运行ShaderToy上的大部分着色器代码&…

Weblogic漏洞(二)之 Weblogic漏洞环境安装

Weblogic漏洞环境安装 这里我们使用Kali虚拟机安装docker并搭建vulhub靶场来进行Weblogic漏洞环境的安装 安装 docker #更新软件 apt-get update #安装CA证书 apt-get install -y apt-transport-https ca-certificates #安装docker apt install docker.io #查看docker是否安…

【商业案例应用】C端产品设计流程——团购产品案例

文章目录 1、项目背景介绍2、产品前期分析3、产品规划4、总结 1、项目背景介绍 2、产品前期分析 3、产品规划 4、总结

SSH连接安卓手机Termux —— Android手机

文章目录 前言1.安装ssh2.安装cpolar内网穿透3.远程ssh连接配置4.公网远程连接5.固定远程连接地址 前言 使用安卓机跑东西的时候,屏幕太小,有时候操作不习惯。不过我们可以开启ssh,使用电脑PC端SSH远程连接手机termux。 本次教程主要实现在…

C语言入门 Day_13 二维数组

目录 前言: 1.字符串 2.创建二维数组 3.使用二维数组 4.易错点 5.思维导图 前言: 我们学习了字符类型char,我们可以用char来表示一个大写或者小写的字母,但真实应用中我们往往使用的是多个字符组成的一个单词或者句子。 …

Linux gdb单步调试的原理

文章目录 一、demo演示二、原理分析参考资料 一、demo演示 .section .data message:.string "Hello, World!\n" len . - message.section .text .globl _start _start:# 调用 write() 函数输出 "Hello, World!"mov $1, %rax # 系统调用号为 1…

海域可视化监管:浅析海域动态远程视频智能监管平台的构建方案

一、方案背景 随着科技的不断进步,智慧海域管理平台已经成为海洋领域监管的一种重要工具。相比传统的视频监控方式,智慧海域管理平台通过建设近岸海域视频监控网、海洋环境监测网和海上目标探测网络等,可实现海洋管理的数字化转型。 传统的…

『好书推荐』|《Effective软件测试》

作者简介 《Effective软件测试》 是一本由清华大学出版社出版的图书,作者是[荷]毛里西奥阿尼什(Maurcio Aniche),译者是朱少民、李洁、张元。是2023年6月新推出的一本书籍。 Maurcio Aniche博士是荷兰代尔夫特理工大学软件工程系的…

页面页脚部分CSS分享

先看效果&#xff1a; CSS部分&#xff1a;&#xff08;查看更多&#xff09; <style>body {display: grid;grid-template-rows: 1fr 10rem auto;grid-template-areas: "main" "." "footer";overflow-x: hidden;background: #F5F7FA;min…

使用LightPicture开源搭建私人图床:详细教程及远程访问配置方法

文章目录 1.前言2. Lightpicture网站搭建2.1. Lightpicture下载和安装2.2. Lightpicture网页测试2.3.cpolar的安装和注册 3.本地网页发布3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1.前言 现在的手机越来越先进&#xff0c;功能也越来越多&#xff0c;而手机…

urllib库

目录 1、简介 2、请求模块 3、解析模块 1、简介 urllib是python内置的标准库&#xff0c;无需下载&#xff0c;导入即可使用。 2、请求模块 urllib包里有一个request模块 from urllib import request# 1.request模块# 1.1发送网络请求 # urlopen() : 打开url地址 resp re…

进程的概念、组成、特征

1.概念 进程是操作系统进行资源分配的最小的单位。 2.组成 进程由PCB、程序段、数据段组成。PCB是操作系统需要的&#xff0c;而程序段和数据段是用户所需要的。 PCB是一种数据结构&#xff0c;操作系统所需的进程资源都存储在PCB中&#xff0c;PCB也是进程存在的唯一标识。…

【快应用】后台运行的快应用如何自动前台打开

【关键词】 Onhide、router、后台 【问题背景】 快应用退到后台运行后&#xff0c;隔几秒钟后&#xff0c;会自动打开跳转到某个页面&#xff0c;这种情形应该如何去定位处理&#xff1f; 【问题分析】 退到后台运行&#xff0c;再自动拉起看似很诡异&#xff0c;以为是快应…