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/9/25 6:36:59 阅读更多 →
力扣---指针题

力扣---指针题

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

2026/9/25 21:12:18 阅读更多 →
2026出海服务商深度横评:四类全球化服务商,按企业发展阶段精准选型

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

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

2026/9/26 8:45:50 阅读更多 →

最新新闻

XL2417D:7×7mm无线系统级芯片实现300–700米可靠通信

XL2417D:7×7mm无线系统级芯片实现300–700米可靠通信

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/27 1:35:25 阅读更多 →
STM32CubeMX与Keil5安装配置全攻略:从下载到点灯验证环境

STM32CubeMX与Keil5安装配置全攻略:从下载到点灯验证环境

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/27 1:35:25 阅读更多 →
Jetson Nano与Dofbot四自由度机械臂视觉抓取实战:OpenCV CUDA加速与手眼标定

Jetson Nano与Dofbot四自由度机械臂视觉抓取实战:OpenCV CUDA加速与手眼标定

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/27 1:35:24 阅读更多 →
陕西网站建设公司找哪家2026最新避坑指南

陕西网站建设公司找哪家2026最新避坑指南

陕西网站建设公司找哪家2026最新避坑指南 域名和服务器这俩词,是不是听着就头大?很多老板找陕西网站建设公司,第一句话就是“帮我弄个网站”,结果对方反问“你域名买了吗?服务器在哪?”,瞬间懵圈。这就是典型的【域名服务器搞不懂】,导致预算超支…

2026/9/27 1:35:24 阅读更多 →
STM32实验室消防预警系统:可部署、可仿真、可验证的嵌入式闭环方案

STM32实验室消防预警系统:可部署、可仿真、可验证的嵌入式闭环方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/27 1:35:24 阅读更多 →
AIoT与边缘计算如何驱动医疗、教育、交通的跨领域技术落地

AIoT与边缘计算如何驱动医疗、教育、交通的跨领域技术落地

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/27 1:34:24 阅读更多 →

日新闻

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio Sp…

2026/9/27 0:00:34 阅读更多 →
SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南 模板网站太丑不够用?别急着加滤镜,那是治标不治本。很多老板盯着后台流量掉得眼红,却还在纠结首页Banner的圆角是不是3像素。这就像穿着西装去挖土,姿势不对,努力白费。我整理这份 速查手册…

2026/9/27 0:00:34 阅读更多 →
FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏

FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏

FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏 【免费下载链接】FireRed-OpenStoryline FireRed-OpenStoryline is an AI video editing agent that transforms manual editing into intention-driven directing through natural language …

2026/9/27 0:00:34 阅读更多 →

周新闻

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio Sp…

2026/9/27 0:00:34 阅读更多 →
SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南 模板网站太丑不够用?别急着加滤镜,那是治标不治本。很多老板盯着后台流量掉得眼红,却还在纠结首页Banner的圆角是不是3像素。这就像穿着西装去挖土,姿势不对,努力白费。我整理这份 速查手册…

2026/9/27 0:00:34 阅读更多 →
FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏

FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏

FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏 【免费下载链接】FireRed-OpenStoryline FireRed-OpenStoryline is an AI video editing agent that transforms manual editing into intention-driven directing through natural language …

2026/9/27 0:00:34 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/25 20:29:43 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/25 20:29:31 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/26 22:52:30 阅读更多 →