技术速递|Python in Visual Studio Code 2024年8月发布
排版:Alan Wang
我们很高兴地宣布 Visual Studio Code 的 Python 和 Jupyter 扩展将于 2023 年 8 月发布!
此版本包括以下公告:
- 面向贡献者的 Python 扩展开发容器
- 用于运行带有参数的 Python 文件的调试配置
- Python 扩展 API 的 Npm 包
- 容错 pytest 发现
如果您有兴趣,可以在我们的 Python、Jupyter 和 Pylance 扩展的更改日志中查看完整的改进列表。
面向贡献者的 Python 扩展开发容器
现在,Python 扩展的源存储库中有一个 Dev Container。使用此自定义开发容器,贡献者可以在 GitHub Codespaces 中打开 Python 扩展存储库,并开始开发和测试 Python 扩展,而无需进行其他安装。由于我们启用了预构建,因此 Dev Container 将立即加载。
预装了 Python 版本 3.7、3.8、3.9、3.10 和 3.11,因此您可以使用 pyenv 轻松在 Python 版本之间切换。dev 容器还配置为安装开发所需的任何扩展,包括 Pylance 和 Black 格式化程序扩展。
用于运行带参数的文件的调试器配置
新的 Debugpy 扩展https://marketplace.visualstudio.com/items?itemName=ms-python.debugpy现在提供“Python File with Arguments” launch.json
配置,当您想要为 Python 文件提供不同的输入值而无需在每次运行时修改代码或调试器配置时,这非常有用。
若要使用此配置,请确保已安装 Debugpy 扩展。然后,按 Ctrl + Shift + D
或者 ⌘ + ⇧ + D
打开“Run and Debug”视图,然后单击“Create a launch.json file”或齿轮图标以访问该 launch.json
文件。选择“Debugpy”,然后从可用配置中选择“Python: File with Arguments”。
然后,打开要调试的 Python 文件,该文件需要命令行参数。要开始调试,请按 F5
或 Run > Start Debugging。将出现一个提示,允许您输入应传递给 Python 文件的所需参数。
输入参数后,按 Enter,调试器将启动,让您单步执行代码! 点此查看视频演示。
主题:Catppuccin Macchiato(vscode.dev 预览)
Python 扩展 API 的 Npm 包
Python 扩展现在提供了一个 npm 包,使其他扩展作者更容易访问和跟踪 Python 扩展 API 中的更改。请查看 @vscode/python-extension npm 模块,以使用计算机上可用的 Python 环境。
容错 pytest 发现
Test Explorer 面板现在支持容错 pytest 发现,这是我们新测试架构中包含的一项功能。如果 pytest 在发现过程中遇到可管理的错误,例如未知导入,则仍将在包含错误的文件之外发现所有剩余的测试。此功能仅在实验性功能后面的新测试重写中可用。重写目前对 100% 的预发布用户和 25% 的发布用户有效,但将在不久的将来普遍推出。在此期间,您可以继续选择加入或退出使用 pythonTestAdapter
设置的重写。
其他更改和增强功能
我们还添加了一些小的增强功能,并修复了用户请求的问题,这些问题应该会改善你在 Visual Studio Code 中使用 Python 和 Jupyter Notebooks 的体验。一些值得注意的变化包括:
- 导入解析错误显示有关正在使用的环境的更多信息 (@pylance-release#4368)。
- 根据反馈,将向 100% 的用户推出依赖项文件中的 Create Environment 按钮的移除 (@vscode-python#20982)。
- Run file in dedicated terminal 重新添加为运行配置 (@vscode-python#21282)。
我们还要特别感谢本月的贡献者:
- @Imgarret 帮助提交问题并为与新测试重写相关的 pytest 的测试类、错误和跳过标志创建了测试用例(@vscode-python#21578 和 @vscode-python#21579)。
- @Jammf 对 VSCode-MyPy 做出了第一个贡献,以修复使用 –follow-imports=normal (@vscode-mypy#76) 时的错误。
- @PeterJCLaw 对 VSCode-MyPy 做出了第一个贡献,以删除可能与项目冲突的 Follow-Imports 参数 (@vscode-MyPy#90)。
征集社区反馈
由于我们正在规划和确定未来工作的优先级,因此我们重视您的反馈!以下是我们希望得到反馈的几个问题:
- 通过双击它们,支持本地查看 numpy 和 pickle 文件:@vscode-python#21443
- 通过右键单击
requirements.txt
文件,添加对在当前虚拟环境中安装的支持:@vscode-python#21555 - 配置
launch.json
中的动态模块路径:@vscode-python#21449
此外,需要提醒的是,功能请求标签的问题需要在开放发布后的 60 天内获得 7 票的👍赞成票,以衡量社区的兴趣。我们将此作为确定即将进行的工作优先级的另一种方式。
通过从 Marketplace 下载 Python 扩展和 Jupyter 扩展来尝试这些新的改进,或者直接从 Visual Studio Code 的扩展视图安装 ( Ctrl + Shift + X
或 ⌘ + ⇧ + X
)。可以在文档中详细了解 Visual Studio Code 中的 Python 支持。如果您遇到任何问题或有建议,请在 Python VS Code GitHub 页面上提交问题。
相关文章:
技术速递|Python in Visual Studio Code 2024年8月发布
排版:Alan Wang 我们很高兴地宣布 Visual Studio Code 的 Python 和 Jupyter 扩展将于 2023 年 8 月发布! 此版本包括以下公告: 面向贡献者的 Python 扩展开发容器用于运行带有参数的 Python 文件的调试配置Python 扩展 API 的 Npm 包容错 …...

【话题】重塑未来:AI辅助编程对程序员工作的影响与应对策略
目录 人工智能时代,程序员如何保持核心竞争力? 引言 方向一:AI辅助编程对程序员工作的影响 效率提升 代码质量 潜在风险 方向二:程序员应重点发展的核心能力 复杂系统设计 跨学科知识整合 与AI协作的能力 方向三:人机协…...
在Debian上安装freeswitch
在Debian上安装freeswitch 说明: 首次发表日期:2024-08-12参考文档: https://medium.com/jogikrunal9477/ultimate-guide-to-installing-freeswitch-on-ubuntu-22-04-lts-3745ef6a6bd6https://developer.signalwire.com/freeswitch/FreeSWI…...

论文分享 | Fuzz4All: 基于大语言模型的通用模糊测试
大语言模型是当前最受关注的研究热点,基于其生成和理解能力,对现有领域在提升性能和效果上做更多尝试。分享一篇发表于2024年ICSE会议的论文Fuzz4All,它组合多个大语言模型以非常轻量且黑盒的方式,实现了一种跨语言和软件的通用模…...

VS Code 配置docker 管理员权限终端
问题描述 在容器中需要使用sudo或者su root时候,权限不够,被灵魂提问。 然而,镜像是官方发布的,翻遍了githubissues也没有找到password. 解决 Attach shell 在docker插件中,attach shell 可以直接获得shell。 所…...

使用Linux实现FTP云盘1
关于FTP服务器 FTP(文件传输协议)服务器是在互联网上提供文件存储和访问服务的计算机,它们依照FTP 协议提供服务。 FTP是File Transfer Protocol(文件传输协议)。 程序运行,服务端不断接收客户端指令,服务 端可同时处…...
tombo resquiggle
Re-squiggle 算法 简介 纳米孔读取产生的电流信号水平数据称为squiggle。将这些squiggle信息进行基底呼叫通常与参考序列相比会包含一些错误。Re-squiggle算法定义了从squiggle到参考序列的新分配,即重新squiggle。 Re-squiggle算法是Tombo框架的基础。该算法输入包含原始信…...

vue3获取vue实例 并注册全局属性方法
vue3注册全局属性方法 前言一、app.config.globalProperties1 注册实例2 注册方法 二、依赖注入(Provide / Inject)1 注册实例2 注册方法3 一次性多次传入 最后 前言 在使用 Vue 时,多个地方使用同一个方法导致每个地方都需要按需引用&#…...
function calling后,如何让大模型进行自然语言输出?
在现代的自然语言处理(NLP)系统中,Function Calling 是指模型在对话过程中调用外部函数以获取特定数据或执行特定操作的能力。在 Function Calling 后,你可以将接收到的数据发送回大模型,并生成自然语言输出。以下是如…...
Android笔试面试题AI答之Kotlin(8)
文章目录 34.Kotlin 泛型中的“*”和“Any”有什么区别?Any*总结 35.Kotlin 协程在哪些方面优于 RxKotlin/RxJava?1. 语法简洁性和易读性2. 性能3. 错误处理和调试4. 场景适用性5. 学习和使用成本 36.Kotlin 协程中的 launch/join 和 async/await 有什么…...

LVS服务的搭建之NAT模式、DR模式的搭建实战
# LVS的概述 1/什么是LVS linux virtural server的简称,也就是linxu虚拟机服务器,使用lvs可以达到的技术目标是:通过linux达到负载均衡技术和linux操作系统实现一个高性能高可用的linux服务器集群,他具有良好的可靠性࿰…...

Raft分布式存储
文章目录 前言一、项目大纲二、Raft模块1.Raft介绍2.大致内容Leader与选举日志同步、心跳raft日志的两个特点 3.主要流程1. raft类的定义关键函数m_nextIndex 和 m_matchIndex作用 2.启动初始化3.竞选leaderelectionTimeOutTicker:doElectionsendRequestVoteRequestVote 4.日志…...
【Linux】使用nm命令查看动态库包含的符号表
【Linux】使用nm命令查看动态库包含的符号表 文章目录 【Linux】使用nm命令查看动态库包含的符号表1. nm的简介2. nm的使用3. nm查找具体的函数名或变量名Reference 1. nm的简介 nm命令来自name的简写。nm命令常用于查看二进制文件中的符号表,通常用于静态库和可执…...

你还不知道苹果手机截长图的方法?4 种方法都可以
苹果手机截长图 先给大家介绍第一个苹果手机截长图的方法,如果你是在 Safari 浏览器中想要截图分享的话,浏览器截图自带可以截取全页的选项,让你实现截长屏的操作。首先找到你想要截取的网页,然后按下手机的电源按键以及音量按键…...
C++选择题带答案
1. 在定义成员函数时给出的成员函数的正确标记是 (1) 。 (a) <类名>.<函数名> (b) <类名>::<函数名> (c) <对象名>.<函数名> (d) <对象名>::<函数名> 2.以下关于函数指针的叙述中,正确…...

Unity动画模块 之 简单创建一个序列帧动画
本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正 1.什么是序列帧动画 序列帧动画简单来讲就是通过连续播放一系列静态图像,形成动态视觉效果的过程ÿ…...
学会高效记录并整理编程学习笔记
文章目录 一、前言二、建议和方法2.1 明确笔记目的2.2 选择合适的工具2.3 结构化笔记2.4 高效记录技巧2.5 图文并茂2.6 定期回顾与整理2.7 利用搜索与链接2.8 分享与交流2.9 实践与应用 三、总结 一、前言 高效记录并整理编程学习笔记是提升学习效率和巩固知识的重要手段&…...

Llama 3.1中文微调数据集已上线,超大模型一键部署
7 月的 AI 圈真是卷完小模型卷大模型,精彩不停!大多数同学都能体验 GPT-4o、Mistral-Nemo 这样的小模型,但 Llama-3.1-405B 和 Mistral-Large-2 这样的超大模型让很多小伙伴犯了难。 别担心!hyper.ai 官网在教程板块为大家提供了…...

css实现太极图
<template><div><!-- 太极图 --><div class"all"><div class"left box"></div><div class"right box"></div><div class"black"><div class"inner_white"><…...
Android 13 移植EthernetSettings/Ethernet更新
移植EthernetSettings Android 13 在Settings搜索没有发现以太网设置,应该是移除了,但是客户的设备需要,所以移植Android 11的. 以太网相关的功能在Android13中进行模块化,提取到packages/modules/Connectivity/中, EthernetManager相关代码从framework移到packages/modules/…...

聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...

HBuilderX安装(uni-app和小程序开发)
下载HBuilderX 访问官方网站:https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本: Windows版(推荐下载标准版) Windows系统安装步骤 运行安装程序: 双击下载的.exe安装文件 如果出现安全提示&…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...

Android15默认授权浮窗权限
我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建
华为云FlexusDeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色,华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型,能助力我们轻松驾驭 DeepSeek-V3/R1,本文中将分享如何…...

Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...

(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

基于Java+VUE+MariaDB实现(Web)仿小米商城
仿小米商城 环境安装 nodejs maven JDK11 运行 mvn clean install -DskipTestscd adminmvn spring-boot:runcd ../webmvn spring-boot:runcd ../xiaomi-store-admin-vuenpm installnpm run servecd ../xiaomi-store-vuenpm installnpm run serve 注意:运行前…...
前端中slice和splic的区别
1. slice slice 用于从数组中提取一部分元素,返回一个新的数组。 特点: 不修改原数组:slice 不会改变原数组,而是返回一个新的数组。提取数组的部分:slice 会根据指定的开始索引和结束索引提取数组的一部分。不包含…...