Python in Visual Studio Code 2024年2月发布

排版:Alan Wang

我们很高兴地宣布 2024 年 2 月版 Visual Studio Code 的 Python 和 Jupyter 扩展已经推出!

此版本包括以下公告:

  • 默认安装的 Python 调试器扩展
  • 快速选择 Python 解释器中的“Create Environment”选项
  • Jupyter 的内置变量查看器
  • 使用 Pylance 的新诊断规则
  • 使用 Python 的 VS Code 触发的断点

如果您有兴趣,可以在 Python、Jupyter 和 Pylance 扩展的更新日志中查看完整的改进列表。

默认安装的 Python 调试器扩展

默认情况下,Python 调试器扩展现在与 Python 扩展一起安装。

Python 调试器扩展旨在将调试功能与主 Python 扩展分开,以防止出现兼容性问题。这可确保即使 Python 扩展不再支持较旧的 Python 版本(例如 Python 3.7),您也可以继续调试这些版本的项目,而不会降级 Python 扩展。它还提供特定于平台的构建,确保您只接收与特定操作系统相关的组件,从而减少下载时间和不必要的开销。

Python 调试器扩展支持您习惯的所有功能,甚至更多!

若要确保使用新的 Python 调试器扩展,请在 launch.json 配置文件中将"type": "python"替换为"type": "debugpy"。将来,Python 扩展将不再提供调试支持,我们将把所有调试支持转换为 Python 调试器扩展。

快速选择 Python 解释器中的“Create Environment”选项

现在,您可以更方便地从 Python 解释器 Quick Pick 创建 Python 环境。运行“Python: Select Interpreter”命令,然后选择“Create Virtual Environment”选项,为项目创建新的虚拟环境。
在这里插入图片描述

Jupyter 的内置变量查看器

Jupyter 扩展在“Run and Debug”面板中添加了一个实验变量查看器。您可以通过添加 "notebook.experimental.variablesView": true 至 User settings.json 文件来启用此体验。此内置变量视图可用于查看笔记本内核中的变量,从而帮助您在运行代码时监视程序中的变量。这在调试代码时特别有用,因为您可以实时监视变量的值。

内置变量查看器仍在积极开发中。欢迎在 vscode-jupyter 存储库中提供反馈和建议。

使用 Pylance 的新诊断规则

由 Pyright 提供支持的 Pylance 用于在启用类型检查模式时显示代码中各种键入问题的诊断。此诊断规则已在 Pyright 中进行了修改,以便对诊断进行更精细的控制,现在可在 Pylance 预发行版中使用。诊断已细分为以下新规则:
reportGeneralTypeIssuesreportGeneralTypeIssues

  • reportAbstractUsage
  • reportArgumentType
  • reportAssertTypeFailure
  • reportAssignmentType
  • reportAttributeAccessIssue
  • reportCallIssue
  • reportInconsistentOverload
  • reportIndexIssue
  • reportInvalidTypeArguments
  • reportInvalidTypeForm
  • reportNoOverloadImplementation
  • reportOperatorIssue
  • reportPossiblyUnboundVariable
  • reportRedeclaration
  • reportReturnType
  • reportUnusedExcept

您可以参考配置文档,了解有关它们中的每个方法的更多详细信息。

使用 Python 的 VS Code 触发的断点

VS Code 添加了对触发断点的支持!触发的断点是在命中另一个断点后自动启用的断点。例如,在诊断代码中仅在特定前提条件之后发生的故障情况时,这可能非常有用。

可以通过右键单击行装订线,选择**“Add Triggered Breakpoint…”**,然后选择启用此断点的断点来设置触发的断点。

使用 Python 的 VS Code 触发的断点

所有语言都支持触发的断点,而不仅仅是 Python!

其他更改和增强功能

我们还添加了一些小的增强功能,并修复了用户请求的问题,这些问题应该可以改善你在 Visual Studio Code 中使用 Python 和 Jupyter Notebook 的体验。一些值得注意的变化包括:

  • @vscode-jupyter#13596修复了对 Python 的重复建议,并避免启动其他语言服务器。
  • @vscode-python#22520添加了对多级 pytest 类的支持,允许顶级类显示在 测试资源管理器中。
  • @vscode-python#21770解释器快速选择现在显示 conda 环境的名称,以便更轻松地识别它们。

新的 Python 快速入门文档页面可帮助您快速上手和编码!

我们还要特别感谢本月的贡献者:

  • @PopoDev 在 @vscode-python#22701 的工作区中创建的 conda 环境显示名称
  • @yilei 在 @vscode-black-formatter#380 中使用 Black 23.11.0+ 时支持范围格式

征集社区反馈意见

当我们计划和优先考虑未来的工作时,我们重视您的反馈!以下是我们希望得到反馈的几个问题:

  • (@vscode-python#22827) 中测试覆盖率的设计方案

通过从市场下载 Python 扩展和 Jupyter 扩展来试用这些新的改进,或直接从 Visual Studio Code 中的扩展视图(Ctrl + Shift + X 或 ⌘ + ⇧ + X)安装它们。可以在文档中详细了解 Visual Studio Code 中的 Python 支持。如果遇到任何问题或有建议,请在 Python VS Code GitHub 页面上提交问题。

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

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

相关文章

flink反压

flink反压(backpressure),简单来说就是当接收方的接收速率低于发送方的发送速率,这时如果不做处理就会导致接收方的数据积压越来越多直到内存溢出,所以此时需要一个机制来根据接收方的状态反过来限制发送方的发送速率&…

Spring6学习技术|IoC|手写IoC

学习材料 尚硅谷Spring零基础入门到进阶,一套搞定spring6全套视频教程(源码级讲解) 有关反射的知识回顾 IoC是基于反射机制实现的。 Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法&…

网页数据的解析提取(正则表达式----re库详解)

前面,我们已经可以用requests库来获取网页的源代码,得到HTML代码。但我们真正想要的数据是包含在HTML代码之中的。要怎样才能从HTML代码中获取想要的信息呢?正则表达式是一个万能的方法!!! 目录 正则表达…

多维时序 | Matlab实现基于VMD-DBO-GRU、VMD-GRU、GRU的多变量时间序列预测

多维时序 | Matlab实现基于VMD-DBO-GRU、VMD-GRU、GRU的多变量时间序列预测 目录 多维时序 | Matlab实现基于VMD-DBO-GRU、VMD-GRU、GRU的多变量时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Matlab实现基于VMD-DBO-GRU、VMD-GRU、GRU的多变量时间序列预测…

辽宁博学优晨教育:视频剪辑培训,开启创意新篇章

在数字化时代,视频已成为信息传播的重要载体。辽宁博学优晨教育紧跟时代步伐,推出全新的视频剪辑培训课程,为广大学员开启创意之旅,探索视频剪辑的无限可能。 一、视频剪辑:时代的选择与技能的进阶 随着互联网的普及和…

Stable diffusion UI 介绍-文生图

1.提示词: 你希望图中有什么东西 2.负面提示词:你不希望图中有什么东西 选用了什么模型 使用参数 1.采样器 sampling method 使用什么算法进行采样 2.采样迭代步数 sampling steps 生成图像迭代的步数,越多越好,但是生成速度越大越…

【C语言】socket 层到网络接口的驱动程序之间的函数调用过程

一、socket 层到网络接口的驱动程序之间的函数调用过程概述 在 Linux 操作系统中,socket 层到网络接口的驱动程序之间的函数调用过程相对复杂,涉及多个层次的交互。以下是一个简化的概述,描述数据从 socket 传递到硬件驱动,再到硬…

uniapp播放mp4省流方案

背景: 因为项目要播放一个宣传和讲解视频,视频文件过大,同时还为了节省存储流量,想到了一个方案,用m3u8切片替代mp4。 m3u8:切片播放,可以理解为一个1G的视频文件,自行设置文…

【微服务生态】Dubbo

文章目录 一、概述二、Dubbo环境搭建-docker版三、Dubbo配置四、高可用4.1 zookeeper宕机与dubbo直连4.2 负载均衡 五、服务限流、服务降级、服务容错六、Dubbo 对比 OpenFeign 一、概述 Dubbo 是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力&#…

总结Rabbitmq的六种模式

RabbitMQ六种工作模式 RabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue 高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开发中应用非常广泛。 RabbitMQ有六…

9.vue学习笔记(组件传递Props校验+组件事件-组件传递数据+组件事件-配合“v-model”使用)

文章目录 1.组件传递Props校验1.1.默认值1.2.必选项1.3.注意事项:props 是只读的 2.组件事件-组件传递数据2.1.温馨提示:组件之间传递数据的方案 3.组件事件-配合“v-model”使用 1.组件传递Props校验 Vue组件可以更细致地声明对传入的 props 的校验要求…

顺序表经典算法及其相关思考

27. 移除元素 - 力扣(LeetCode) 思路一 利用顺序表中的SLDestroy函数的思想,遇到等于val值的就挪动 思路二 双指针法:不停的将和val不相等的数字往前放。此时的des更像一个空数组,里面存放的都是和val不相等、能够存…

【人工智能学习思维脉络导图】

曾梦想执剑走天涯,我是程序猿【AK】 目录 知识图谱1. 基础知识2.人工智能核心概念3.实践与应用4.持续学习与进展5.挑战与自我提升6.人脉网络 知识图谱 人工智能学习思维脉络导图 1. 基础知识 计算机科学基础数学基础(线性代数、微积分、概率论和统计学…

先进语言模型带来的变革与潜力

用户可以通过询问或交互方式与GPT-4这样的先进语言模型互动,开启通往知识宝库的大门,即时访问人类历史积累的知识、经验与智慧。像GPT-4这样的先进语言模型,能够将人类历史上积累的海量知识和经验整合并加以利用。通过深度学习和大规模数据训…

第十四章[面向对象]:14.5:访问限制/属性

一,动态添加属性/方法 1,动态添加实例属性和实例方法 from types import MethodTypeclass Student:passs = Student()# 动态添加属性 s.name = Tom print(s.name) print(s.__dict__)# 定义一个函数作为实例方法 def set_age(self, age):self.age = age# 动态添加方法 s.set_…

Nginx基础入门

一、Nginx的优势 nginx是一个高性能的HTTP和反向代理服务器,也是一个SMTP(邮局)服务器。 Nginx的web优势:IO多路复用,时分多路复用,频分多路复用 高并发,IO多路复用,epoll&#xf…

【MySQL】学习连接查询和案例演示

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​💫个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-KOxr1rwR9cQTlydJ {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

OD(8)之Mermaid流程图(flowcharts)使用详解

OD(8)之Mermaid流程图(flowcharts)使用详解 Author: Once Day Date: 2024年2月20日 漫漫长路才刚刚开始… 全系列文章可参考专栏: Linux实践记录_Once_day的博客-CSDN博客 参考文章: 关于 Mermaid | Mermaid 中文网 (nodejs.cn)Mermaid | Diagramming and charting tool‍…

聊一聊bpmn-js中的依赖注入框架didi

最近在用bpmn-js来进行flowable流程图的开发工作,不可避免地希望对其运行机制做一个大致的了解,在使用bpmn-js的过程中,bpmn-js基于diagram-js实现的插件式开发方式引起了我的兴趣。于是通过查阅源码希望对齐进一步了解发现:diagram-js是基于一个叫didi的实现的依赖注入功能…

C#通过泛型方法的重载分别调用主窗体和提示窗体

目录 一、涉及到的知识点 1.泛型方法的重载 2.使用泛型更好地实现通用化 二、示例:泛型方法及其重载 1.源码 2. 生成效果 实际开发项目时,有时会因为调用窗体或提示窗体过多,而难于管理,这时,可以通过泛型方法的…