【AIGC】基础篇:VS Code 配置 Python 命令行参数调试debug超详细教程
文章目录
- 前言
- 一、安装必要的扩展
- 二、安装 debugpy
- 三、创建 launch.json 配置文件
- 四、配置调试环境
- 五、开始调试
- 六、命令行调试
- 七、远程调试
- 八、调试技巧
- 九、常见问题及解决方法
前言
在 Python 开发过程中,调试是必不可少的环节。VS Code 提供了强大的调试功能,可以帮助开发者轻松地进行代码调试。今天,就让我们一起学习如何在 VS Code 中配置 Python 的命令行调试,即使是小白也能轻松上手。
一、安装必要的扩展
在开始之前,确保你已经安装了 VS Code 的 Python 扩展和 Python 调试器扩展。这两个扩展是进行 Python 调试的基础。
二、安装 debugpy
在命令行中运行以下命令来安装 debugpy:
python -m pip install --upgrade debugpy
这个命令会将 debugpy 安装到你的 Python 环境中,它是 VS Code 进行 Python 调试的核心工具。
三、创建 launch.json 配置文件
launch.json 文件是 VS Code 调试的核心配置文件,它定义了调试会话的行为。按照以下步骤创建 launch.json 文件:
- 打开 VS Code,选择侧边栏的 “运行”视图。
- 如果你还没有配置文件,会看到一个 “运行和调试” 按钮和一个创建配置文件的链接。
- 点击 “创建 launch.json 文件” 链接,或者使用 “运行” > “打开配置” 菜单命令。
- 选择 “Python 调试器”,然后在弹出的菜单中选择 “Python 文件”。
VS Code 会自动为你生成一个包含基本配置的 launch.json 文件,内容大致如下:
{"version": "0.2.0","configurations": [{"name": "Python: Current File","type": "python","request": "launch","program": "${file}","console": "integratedTerminal"}]
}
这个配置表示调试当前打开的 Python 文件,并在 VS Code 的集成终端中运行。
四、配置调试环境
在 launch.json 文件中,你可以根据需要进行一些自定义配置。以下是一些常用的配置选项:
- name:调试配置的名称,显示在 VS Code 的调试菜单中。
- type:调试器类型,对于 Python 调试,这里应该是
python
或debugpy
。 - request:调试请求类型,
launch
表示启动调试,attach
表示附加到已运行的进程。 - program:要调试的 Python 程序的入口文件路径。
- console:指定调试时使用的终端类型,
integratedTerminal
表示 VS Code 的集成终端。
在 launch.json
文件中,你可以通过 args 属性添加命令行参数。以下是一个示例配置:
{"version": "0.2.0","configurations": [{"name": "Python: Debug with Args","type": "python","request": "launch","program": "${workspaceFolder}/versions.py","args": ["excel","D:\\work\\表250421.xlsx","--column","0","--sheet","Sheet1"],"console": "integratedTerminal"}]
}
在这个配置中,args 属性用于传递命令行参数
`python versions.py excel "D:\work\表250421.xlsx" --column 0 --sheet Sheet1`
你可以根据需要修改这些参数。
五、开始调试
完成配置后,就可以开始调试了。点击 VS Code 顶部菜单的 “运行” > “开始调试”,或者直接按下 F5 键。VS Code 会根据 launch.json 文件中的配置启动调试器,并在集成终端中运行你的 Python 程序。
六、命令行调试
如果你更喜欢在命令行中启动调试,也可以使用以下命令:
python -m debugpy --listen 5678 ./myscript.py
这个命令会启动一个监听端口 5678 的调试服务器。然后,你可以在 VS Code 中使用以下配置连接到调试服务器:
{"name": "Python: Attach","type": "debugpy","request": "attach","connect": {"host": "localhost","port": 5678}
}
七、远程调试
如果你需要调试运行在远程服务器上的 Python 程序,可以通过 SSH 隧道实现远程调试。以下是一个简单的示例:
- 在远程服务器上,运行以下命令启动调试服务器:
python -m debugpy --listen 0.0.0.0:5678 ./myscript.py
- 在本地机器上,创建一个 SSH 隧道:
ssh -2 -L 5678:localhost:5678 user@remote-server
- 在 VS Code 中,使用以下配置连接到远程调试服务器:
{"name": "Python: Remote Attach","type": "debugpy","request": "attach","connect": {"host": "localhost","port": 5678} }
八、调试技巧
- 设置断点:在代码中点击行号旁边的空白区域,可以设置断点。当程序运行到断点时,会自动暂停,你可以查看变量的值、修改变量、单步执行等。
- 查看变量:在调试过程中,你可以将鼠标悬停在变量上,或者在调试控制台中输入变量名,查看变量的值。
- 单步执行:使用调试工具栏中的按钮,可以单步执行代码,逐行查看程序的执行过程。
九、常见问题及解决方法
- 调试器无法连接:确保调试服务器正在运行,并且端口号正确。如果使用 SSH 隧道,检查隧道是否正确建立。
- 程序无法启动:检查 launch.json 文件中的配置是否正确,特别是
program
和console
的设置。 - 断点未命中:确保代码与运行的程序一致,并且调试器已正确连接。
相关文章:
【AIGC】基础篇:VS Code 配置 Python 命令行参数调试debug超详细教程
文章目录 前言一、安装必要的扩展二、安装 debugpy三、创建 launch.json 配置文件四、配置调试环境五、开始调试六、命令行调试七、远程调试八、调试技巧九、常见问题及解决方法 前言 在 Python 开发过程中,调试是必不可少的环节。VS Code 提供了强大的调试功能&am…...
【金仓数据库征文】金仓数据库KingbaseES:千行百业国产化征程中的璀璨之星
🎁个人主页:User_芊芊君子 🎉欢迎大家点赞👍评论📝收藏⭐文章 🔍系列专栏:AI 【引言】 在数字化转型浪潮奔涌向前的时代,数据库作为数据存储与管理的核心枢纽,其重要性不…...
Linux进程学习【基本认知】
🌼🌼前言:前言理解冯诺依曼体系结构与操作系统原理 在计算机科学的基础理论中,冯诺依曼体系结构和操作系统是两个关键概念,它们共同构成了现代计算机的运行基础。本文将从这两个方面入手,简要讲解它们的基本…...
电子工厂POE交换机端口数量选择与部署策略
引言 在电子工厂的智能化升级过程中,POE(Power over Ethernet)交换机凭借其“供电数据传输”一体化功能,成为构建工业物联网的核心设备。与传统工业交换机相比,POE交换机通过单根网线实现设备供电与数据交互ÿ…...
Codeforces Round 1020 (Div. 3) A-D
A. Dr. TC https://codeforces.com/contest/2106/problem/A 题目大意: 对输入字符串每个位置字符依次翻转(1->0 , 0->1) 比如: 101 001 翻转位置1 111 2 100 3 题解: 观察数学特征:ansn…...
电子病历高质量语料库构建方法与架构项目(提示词设计篇)
电子病历人工智能提示词工程是医疗AI应用中的关键技术环节,它直接影响大语言模型在医疗场景下的输出质量和可靠性。随着大语言模型在电子病历生成、质控、数据提取等领域的广泛应用,如何通过编程实现高效、精准的提示词工程成为医疗信息化建设的重要课题。本文将系统介绍电子…...
蓝桥杯 4. 卡片换位
卡片换位 原题目链接 题目描述 你玩过华容道的游戏吗? 这是一个类似的,但更简单的游戏。 看下面的 3 2 格子: --------- | A | * | * | --------- | B | | * | ---------在其中放置了 5 张牌,其中: A 表示关…...
用python进行OCR识别
原文链接:https://www.bilibili.com/opus/1036675560501149699 我担心原作者删除,所以重新拷贝了一遍 1.下载tesseract 链接:https://github.com/UB-Mannheim/tesseract/wiki 这里示例安装最新版本 点击下载tesseract安装包 2.安装tess…...
【大语言模型】大语言模型(LLMs)在工业缺陷检测领域的应用
大语言模型(LLMs)在工业缺陷检测领域的应用场景正在快速扩展,结合其多模态理解、文本生成和逻辑推理能力,为传统检测方法提供了新的技术路径。以下是该领域的主要应用场景及相关技术进展: 1. 多模态缺陷检测与解释 视…...
202531读书笔记|《天上大风:良宽俳句·短歌·汉诗400》——我别无他物款待君,除了山中冬日寂寥,陶然共一醉,不知是与非,一饱百情足,一酣万事休
202531读书笔记|《天上大风:良宽俳句短歌汉诗400》——我别无他物款待君,除了山中冬日寂寥,陶然共一醉,不知是与非,一饱百情足,一酣万事休 《天上大风:良宽俳句短歌汉诗400》良宽是公认与松尾芭…...
HTMLCSS模板实现水滴动画效果
.container 类:定义了页面的容器样式。 display: flex:使容器成为弹性容器,方便对其子元素进行布局。justify-content: center 和 align-items: center:分别使子元素在水平和垂直方向上居中对齐。min-height: 100vh:设…...
Python爬虫(5)静态页面抓取实战:requests库请求头配置与反反爬策略详解
目录 一、背景与需求二、静态页面抓取的核心流程三、requests库基础与请求头配置3.1 安装与基本请求3.2 请求头核心参数解析3.3 自定义请求头实战 四、实战案例:抓取豆瓣读书Top2501. 目标2. 代码实现3. 技术要点 五、高阶技巧与反反爬策略5.1 动态…...
电子病历高质量语料库构建方法与架构项目(数据遗忘篇)
引言 在人工智能与医疗健康的深度融合时代,医疗数据的价值与风险并存。跨机构和平台的医疗数据共享对于推动医学研究、提高诊断精度和实现个性化治疗至关重要,但同时也带来了前所未有的隐私挑战。先进的AI技术可以从理论上去标识化的医疗扫描中重新识别个人身份,例如从MRI数…...
需求开发向设计规划的转化-从需求到设计和编码
需求和设计之间存在差别,但尽量使你的规格说明的具体实现无倾向性。理想情况是:在设计上的考虑不应该歪曲对预期系统的描述( Jackson 1995)。需求开发和规格说明应该强调对预期系统外部行为的理解和描述。让设计者和开发者参与需求…...
browser-use:AI驱动的浏览器自动化工具使用指南
AI驱动浏览器自动化 browser-use下载项目创建Python环境安装依赖配置环境运行WebUI简单使用Deep Research使用本地浏览器免登录 browser-use browser-use是一个基于 Python 的开源库,旨在简化 AI 代理与浏览器之间的交互。它将先进的AI功能与强大的浏览器自动化功能…...
Java从入门到“放弃”(精通)之旅——JavaSE终篇(异常)
Java从入门到“放弃”(精通)之旅🚀——JavaSE终篇(异常) 一、异常的概念与体系结构 1.1 什么是异常? 在生活中,当一个人表情痛苦时,我们可能会关心地问:"你是不是生…...
TCP协议理解
文章目录 TCP协议理解理论基础TCP首部结构图示字段逐项解析 TCP是面向连接(Connection-Oriented)面向连接的核心表现TCP 面向连接的核心特性TCP 与UDP对比 TCP是一个可靠的(reliable)序号与确认机制(Sequencing & Acknowledgment…...
NS3-虚拟网络与物理网络的交互-1 仿真概述
NS3-虚拟网络与物理网络的交互-1 仿真概述 目录 1. 仿真概述1.1 Testbed 仿真示例-FdNetDevice1.2 模拟通道示例-TapDevice 1. 仿真概述 NS-3 专为集成到 TestBed 和虚拟机中而设计 环境。我们通过提供两种网络设备来满足这一需求。 第一种设备是文件描述符 net 设备 &#x…...
晶振老化:不可忽视的隐患与预防策略
在电子设备的世界里,晶振如同精准的时钟,为电路系统提供稳定的频率信号。然而,随着时间推移,晶振会不可避免地出现老化现象。这个看似细微的变化,却可能引发设备性能下降、数据传输错误等一系列问题。晶振老化究竟藏着…...
企业为何要禁止“片断引用开源软件代码”?一文看透!
开篇故事:一段“开源代码”引发的百亿级灾难 某电商平台为快速上线新功能,从GitHub复制了一段“高性能加密算法”代码到支付系统中。 半年后,黑客通过该代码中的隐藏后门,盗取百万用户信用卡信息。 事后调查:这段代…...
测试模版x
本篇技术博文摘要 🌟 引言 📘 在这个变幻莫测、快速发展的技术时代,与时俱进是每个IT工程师的必修课。我是盛透侧视攻城狮,一名什么都会一丢丢的网络安全工程师,也是众多技术社区的活跃成员以及多家大厂官方认可人员&a…...
deepseek-r1-671B满血版,全栈式智能创作平台 - 多模态大模型赋能未来创作
引领AI创作新纪元 比象AI全栈式智能创作平台是基于全球领先的多模态大模型技术构建的新一代AI创作引擎,集成了前沿的BeyondLM-7B认知计算框架、BeyondDiffusion-XL视觉生成系统和BeyondSynth音视频合成技术,打造从内容构思到成品输出的完整智能创作闭环…...
Promethues 普罗米修斯
Prometheus 并非传统意义上的数据库,而是一个开源的系统监控和报警工具包,但它的核心组件之一是时间序列数据库,用于存储监控指标数据。以下是对 Prometheus 及其时间序列数据库功能的详细介绍: 1. Prometheus 概述 目标定位&a…...
Web 服务架构与技术组件概述
目录 web服务流程图 Web 服务流程图描述了客户端与服务器之间的交互。首先,用户通过浏览器发送请求到 Web 服务器。如果请求的是静态资源(如 HTML、CSS、图片),Web 服务器直接返回响应;如果是动态资源,We…...
华硕NUC产品闪耀第31届中国国际广播电视信息网络展览会
2025年4月22日,第31届中国国际广播电视信息网络展览会在北京国家会议中心盛大开幕。作为一年一度的行业盛会,展会汇聚了来自全球各地的顶尖技术与设备厂商。在这片科技与创新交织的海洋中,华硕NUC以其卓越性能、小巧体积和创新技术十分引人注…...
Matplotlib高阶技术全景解析(续):动态交互、三维可视化与性能优化
目录 编辑 一、动态可视化:实时数据流与动画生成 1. 实时数据流可视化 2. 复杂动画控制 二、三维可视化:科学计算与工程建模 1. 基础三维绘图 2. 高级三维渲染优化 三、交互式可视化:GUI集成与Web部署 1. Tkinter/PyQt嵌入式开发 …...
[DDD传灯录]禅师:这,就是领域驱动设计(01-02)
用《软件方法》引领AI全流程开发-5月12-14日第3期 领域驱动设计是革命性的创造,是划时代的洞见,是解决业务领域用户需求技术系统功能逻辑架构分析设计复杂性的敏捷精益方法学。 这一切的根源,归结于领域驱动设计蕴含丰富的佛学思想。佛学是所…...
0基础 | Proteus仿真 | 51单片机 | 继电器
继电器---RELAY 本次选择一款5v一路继电器进行讲解 信号输入 IN1输入高电平,三极管导通,LED1点亮,电磁铁12接通吸引3向下与4接通,J1A的12接通 IN1输入低电平,则J1A的23接通 产品引脚定义及功能 序号 引脚符号 引脚…...
鸿蒙应用开发证书考试的一点想法
一、介绍: 直接上图 二、体验后的想法: 1.知识点在指南API参考最佳实践里面找 2.没有明确说明考试不能查第1点的文档,但是考试只有1个小时,合理分配时间 3.切屏三次后自动提交要注意,每月3次机会下月又有3次机会&a…...
MiniMind模型的web交互功能初试
MiniMind模型的web交互功能初试 一、前言 MiniMind提供了基于streamlit的web交互功能,能够即时切换模型和修改相关参数,经初步测试,具有比较好的体验感。本文介绍了使用MiniMind使用web交互功能的方法,并对使用中出现的问题给出…...
手把手玩转 JSON:快递包裹式思维拆箱装箱,Python / Java / Scala 全景实战指南
在日常开发中,JSON 就像全栈程序员口袋里那把万用螺丝刀——既轻便又几乎无处不在。本文面向初学者和中级读者,用“快递包裹”与“便签盒子”的比喻,结合 Python / Java / Scala 三语种示例,带你从概念、语法到实战全面掌握 JSON。…...
HFSS5(李明洋)——设置激励(波端口激励)
Magnetic是适用于铁磁氧导体的,只有前三种激励类型可以用于计算S参数 1波端口激励 也可以设置在模型内部,如果是设置在模型内部必须加一段理想导体,用于指定端口方向 1.1——模式 number 输入N:计算1-N的模式都计算 1.2——模式校准 计算端口特征阻抗有三种方式:Zpi、…...
NVIDIA --- 端到端自动驾驶
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、传统驾驶模型二、NVIDIA的端到端驾驶模型1.基本模型2.自查讯向量3.通用框架 总结 前言 端到端自动驾驶指的是系统接收来自摄像头雷达和激光雷达的原始传感…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(11): てあります。
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(11): てあります。 1、前言(1)情况说明(2)工程师的信仰 2、知识点(1)てあります。(2)…...
【前端】如何检查内存泄漏
在实际的场景中,如果观察到内存持续出现峰值,并且内存消耗一直没有减少,那可能存在内存泄漏。 使用 Chrome DevTools 来识别内存图和一些内存泄漏,我们需要关注以下两个方面: ● 使用性能分析器可视化内存消耗…...
【多线程】四、死锁
文章目录 Ⅰ. 死锁的概念Ⅱ. 死锁的四个必要条件Ⅲ. 避免死锁的方案Ⅳ. 避免死锁的算法Ⅰ. 死锁的概念 死锁是指在一组进程中的各个进程均占有不会释放的资源,但因互相申请被其他进程所占用不会释放的资源而处于的一种永久等待状态。 通常,死锁发生在多个进程同时需要…...
【现代深度学习技术】循环神经网络06:循环神经网络的简洁实现
【作者主页】Francek Chen 【专栏介绍】 ⌈ ⌈ ⌈PyTorch深度学习 ⌋ ⌋ ⌋ 深度学习 (DL, Deep Learning) 特指基于深层神经网络模型和方法的机器学习。它是在统计机器学习、人工神经网络等算法模型基础上,结合当代大数据和大算力的发展而发展出来的。深度学习最重…...
Video-LLaVA
一、研究背景与现有方法局限性 在多模态大语言模型(LVLMs)的发展中,现有方法面临两大核心挑战。其一为单一模态处理的局限,多数 LVLMs 仅能处理图像 - 语言或视频 - 语言等单一视觉模态,难以在统一框架下高效整合多种视觉输入。其二为统一表示的困难,尽管部分研究尝试通过…...
firewalld 详解
firewalld 详解 firewalld 是 Linux 系统中一个动态防火墙管理工具,取代了传统的 iptables,提供更灵活、动态的规则配置,支持运行时修改且无需重载服务。以下是其核心概念、常用操作及示例指南: 一、核心概念 区域(Zo…...
QuecPython+USBNET:实现USB网卡功能
USBNET 概述 USBNET(USB Networking) 是一种通过 USB 接口 实现网络通信的技术,允许设备通过 USB 连接模拟以太网(Ethernet over USB)或直接进行网络数据传输。它广泛应用于嵌入式设备、工业控制、虚拟机和便携式设备…...
百度搜索AI开放计划:助力开发者通过MCP Server连接用户和应用
百度搜索AI开放计划:助力开发者通过MCP Server连接用户和应用 一、背景 2025年4月25日,百度在Create开发者大会上发布了全新的AI开放计划。这一计划的核心目的是实现用户和AI应用、MCP Server的高效链接,提供更流畅的互动体验,推…...
一文带你了解单例模式及其逐步优化~
单例模式 单例模式是一种创建型设计模式,它确保一个类只有一个实例,并提供一个全局访问点来获取该实例。 使用场景: 需要频繁创建和销毁的对象 创建对象时耗时过多或资源消耗过大 工具类对象(无状态的工具类) 访问…...
【金仓数据库征文】-不懂数据库也能看懂!一文解析金仓技术介绍以典型应用
目录 一、主角登场 没有数据库,你的生活可能会 “乱套” 国产数据库之金仓 KingbaseES 金仓数据库凭啥 “C 位出道”? 二、金仓数据库产品核心解析 企业级数据库 “全能选手” 巧妙的 “内部协作” 按需选择的版本 四、生态联合解决方案深度探索…...
什么是视频上墙
视频联动上墙是指当监控系统中出现报警或其他特定事件时,相关的视频画面能够自动切换并显示在指定的监控大屏或显示设备上,以便监控人员能够快速、直观地查看事件现场的情况,及时做出响应和处理。 具体介绍• 系统组成 :一般由前端…...
C++初登门槛
多态 一、概念 多态是指不同对象对同一消息产生不同响应的行为。例如,蓝牙、4G、Wi-Fi 对“发送数据”指令有不同的具体实现。 二、核心理解 本质:通过基类指针或引用操作子类对象,实现运行时动态绑定。 表现形式: 接口统一&a…...
【金仓数据库征文】- 金融HTAP实战:KingbaseES实时风控与毫秒级分析一体化架构
文章目录 引言:金融数字化转型的HTAP引擎革命一、HTAP架构设计与资源隔离策略1.1 混合负载物理隔离架构1.1.1 行列存储分区策略1.1.2 四级资源隔离机制 二、实时流处理与增量同步优化2.1 分钟级新鲜度保障2.1.1 WAL日志增量同步2.1.2 流计算优化 2.2 物化视图实时刷…...
SpringBoot 学习
什么是 SpringBoot SpringBoot 是基于 Spring 生态的开源框架,旨在简化 Spring 应用的初始化搭建和开发配置。它通过约定大于配置的理念,提供快速构建生产级应用的解决方案,显著降低开发者对 XML 配置和依赖管理的负担。 特点: …...
Q2桥门式起重机司机考试复习重点
Q2桥门式起重机司机考试复习重点 Q2桥门式起重机司机属于特种设备作业人员,理论考试重点复习时应重点掌握以下内容: 1、基础知识 桥门式起重机的结构组成(大车、小车、起升机构、电气系统等)。 主要技术参数(额定起…...
并发设计模式实战系列(7):Thread Local Storage (TLS)
🌟 大家好,我是摘星! 🌟 今天为大家带来的是并发设计模式实战系列,第七章Thread Local Storage (TLS),废话不多说直接开始~ 目录 一、核心原理深度拆解 1. TLS内存模型 2. 关键特性 二、生活化类比&a…...
本地使用Ollama部署DeepSeek
以下是在本地使用Ollama部署DeepSeek的详细教程,涵盖安装、修改安装目录、安装大模型以及删除大模型的操作步骤。 安装Ollama 1. 系统要求 确保你的系统满足以下条件: 操作系统:macOS、Linux或者Windows。足够的磁盘空间和内存。 2. 安装…...