Python 自动化接单实战(二):Excel 批量清洗如何把规则与异常分开
客户说“整理一下 Excel”背后往往同时包含改列名、去空格、金额转换、重复行处理和异常留痕。真正可交付的脚本不能把坏数据悄悄丢掉也不能让一处格式变化拖垮整批文件。这一篇延续前两篇的配置驱动思路先把输入统一成行记录再让规则函数返回“结果或错误”最后分别输出干净数据与异常报告。示例使用标准库 CSV接入 Excel 时只需替换读写适配层。一、先定义不会含糊的验收规则假设订单至少需要order_id、amount和customer。金额必须非负订单号不能为空同一个订单号重复出现时保留第一条并把其余记录写入异常文件。fromdecimalimportDecimal,InvalidOperationdefclean(row):order_idrow.get(order_id,).strip()customerrow.get(customer,).strip()ifnotorder_id:raiseValueError(missing order_id)try:amountDecimal(row.get(amount,).replace(,,).strip())exceptInvalidOperationasexc:raiseValueError(invalid amount)fromexcifamount0:raiseValueError(negative amount)return{order_id:order_id,customer:customer,amount:str(amount)}规则函数不负责打印也不直接写文件因此可以独立测试。客户修改金额约束时只改这一层。二、让每条失败记录都能回到原始位置importcsv seen,accepted,rejectedset(),[],[]withopen(orders.csv,encodingutf-8-sig,newline)assource:forline_no,rowinenumerate(csv.DictReader(source),start2):try:itemclean(row)ifitem[order_id]inseen:raiseValueError(duplicate order_id)seen.add(item[order_id])accepted.append(item)exceptValueErrorasexc:rejected.append({line:line_no,reason:str(exc),**row})print(faccepted{len(accepted)}rejected{len(rejected)})输出示例accepted248 rejected7交付时还应把accepted和rejected分别写入文件并在异常报告中保留源文件名、行号和原因。这样客户可以修正 7 条数据后重跑而不是重新核对 255 行。三、批量目录要有明确停止条件先用 2—3 个脱敏文件验证列名、编码和日期格式再扩展到整个目录。若必填列缺失应停止当前文件若只是单行金额错误则隔离该行并继续。规则不明确时先补样例不要凭经验猜客户意图。 本文把表格清洗拆成规则函数、正常输出和异常报告让批量处理既能继续执行也能逐条追溯。 你的 Excel 清洗任务里最容易反复变化的是列名、日期、金额还是去重规则 关注《Python 自动化接单实战》下一篇继续拆解公开网页文本抓取器的范围控制、规则检查与结构化输出。参考来源Dev.toContext Is KingHacker NewsIntroduction to Data-Oriented Design

相关新闻

Python 自动化接单实战(一):把 CSV 需求做成配置驱动解析器

Python 自动化接单实战(一):把 CSV 需求做成配置驱动解析器

很多 Python 自动化需求看上去不同,拆开后却很相似:客户给一批 CSV 或 JSON 数据,希望改字段名、转换类型、补默认值、做校验,再输出一份干净文件。 真正麻烦的地方通常不是写出第一版脚本,而是规则经常变化。如果字段…

2026/7/28 14:49:20 阅读更多 →
力扣---指针题

力扣---指针题

双指针167. 两数之和 II - 输入有序数组1.要求2.思路633. 平方数之和1.要求2.思路345. 反转字符串中的元音字母1.要求2.思路680. 验证回文字符串 Ⅱ1.要求2.思路88. 合并两个有序数组1.要求2.思路141. 环形链表1.要求2.思路524. 通过删除字母匹配到字典里最长单词1.要求2.思路1…

2026/7/28 14:49:20 阅读更多 →
2026出海服务商深度横评:四类全球化服务商,按企业发展阶段精准选型

2026出海服务商深度横评:四类全球化服务商,按企业发展阶段精准选型

2026年全球出海赛道分化加剧,企业出海不再只有“投流卖货”单一路径。大量实体工厂、跨境品牌、集团企业在全球化布局中陷入两难:只做营销投放,海外分厂、跨国团队管理失控;只做内部管理,线上流量、海外品牌声量长期停…

2026/7/28 14:48:20 阅读更多 →

最新新闻

JS 基础二

JS 基础二

自增运算符 自减运算符 自增运算符: 自减运算符: -- 含义: 让一个变量保存的数 1 或者 -1 再赋予变量自身 可以出现的位置: 变量的前面和后面 如果出现在前面: 变量 变量的使用会先1 再参与运算 如果出现在后面: 变量 变量的使用会先使用原值, 再var a 10; var b a-- --a;/…

2026/7/28 14:59:23 阅读更多 →
AI项目管理的四个致命错误:从需求定义到效果评估的流程避坑

AI项目管理的四个致命错误:从需求定义到效果评估的流程避坑

AI项目管理的四个致命错误:从需求定义到效果评估的流程避坑 技术团队容易陷入一个误区:AI项目失败是因为模型不够好。但大量复盘数据表明,AI项目的失败率超过80%,而其中技术原因只占一小部分。真正致命的是管理层面的问题——目标…

2026/7/28 14:59:23 阅读更多 →
Go并发编程的五个隐性Bug:从goroutine泄漏到channel死锁的排查实战

Go并发编程的五个隐性Bug:从goroutine泄漏到channel死锁的排查实战

Go并发编程的五个隐性Bug:从goroutine泄漏到channel死锁的排查实战Go以并发编程的简洁性著称,"go"一个关键字就能启动协程。但简洁的语法背后,并发Bug的隐蔽性反而更强。goroutine泄漏、channel死锁、race condition——这些问题在…

2026/7/28 14:59:23 阅读更多 →
Mac百度网盘加速插件:3步告别限速,享受满速下载体验

Mac百度网盘加速插件:3步告别限速,享受满速下载体验

Mac百度网盘加速插件:3步告别限速,享受满速下载体验 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘在Mac上的龟…

2026/7/28 14:59:23 阅读更多 →
【运维】Swap

【运维】Swap

在测试环境中,我们经常遇到这样的场景: 物理内存被多服务挤占,free -h 显示剩余几十 MB;服务进程无缘无故消失(被 OOM Killer 处决);SSH 连接超时,compactd 进程卡死 200 秒&#xf…

2026/7/28 14:59:23 阅读更多 →
UE5音频中间件选型指南:MetaSound、FMOD与Wwise深度对比

UE5音频中间件选型指南:MetaSound、FMOD与Wwise深度对比

1. 项目概述:音频中间件选型,一个决定项目成败的隐形战场在UE5项目开发的早期阶段,音频系统的选型往往容易被忽视,但它却像项目的“听觉骨架”,一旦定型,后期重构的成本极高。当你的项目从原型走向规模化&a…

2026/7/28 14:58:23 阅读更多 →

日新闻

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生 【免费下载链接】OmenSuperHub Control Omen laptop performance, fan speeds, and keyboard lighting, and unlock power limits. 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 你是否也曾为官方Om…

2026/7/28 0:00:43 阅读更多 →
RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

做 RAG 的人应该都踩过这个致命的坑:把几百页的财报、法规、技术手册扔给向量库,问一个具体问题,搜出来的全是沾边但没用的内容 —— 关键信息要么被硬切块拆碎了,要么藏在几十条结果的最下面。语义相似≠真正相关,这个…

2026/7/28 0:00:43 阅读更多 →
抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

2026年做短视频运营,从抖音上扒文案早就不是偷偷抄笔记的事了。我刚开始做内容的时候,每天刷半小时抖音,手动把爆款视频的口播敲进备忘录,一条2分钟的视频得花十来分钟,碰到语速快的还要反复回听。后来试了一圈工具&am…

2026/7/28 0:00:43 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/28 12:04:22 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/28 8:29:16 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/28 5:03:42 阅读更多 →

月新闻