无尘阁日记

无尘阁日记

WorkBuddy技能评测 #186 | python-* 十一连:错误处理、可观测、反模式,Python 项目该有的规矩
silcano

基本信息

  • 技能名:python-* 系列(python-error-handling、python-observability、python-resilience、python-design-patterns、python-project-structure、python-anti-patterns、python-code-style、python-resource-management、python-performance-optimization 等)
  • 来源仓库 Star 数:27,426
  • 分类:Backend & API / Documentation
  • 数据来源:SkillKit 中央技能库(第三方技能市场,非 WorkBuddy 官方自研)

它解决了什么痛点

Python 好写,所以最容易写成一坨。这批技能把「合格 Python 项目的默认标准」拆成 11 条:异常该怎么分层(不要 except Exception 然后 pass)、日志该记什么(可观测性不是加 print)、项目目录怎么分层、依赖与资源怎么管(with / contextmanager)、以及一份专门讲反模式的清单。

它最有价值的地方是反模式那条:大多数规范文档只讲「应该怎样」,它讲「这样写为什么会炸」,比如可变默认参数、在循环里拼字符串、用 dict 当结构体、过宽的异常捕获把 bug 吃掉。这些都是你写脚本时天天犯的。

对我有没有用(技术 / 自媒体 / AI / 读书)

技术:强推三份。你写了大量 Python 脚本(爬虫、发布、灌表、截图),python-error-handling 和 python-resource-management 能直接提升它们的可靠性;python-observability 帮你把「跑失败了不知道为什么」变成「日志里有 trace_id 和耗时」。AI:有用——它给了 agent 一套可执行的判据,比「请写健壮的代码」有效。自媒体:可做选题(「我用 11 条规矩重写了我的爬虫脚本」)。读书:无关。

提醒:python-performance-optimization 里有不少「提前优化」的诱惑,你的脚本瓶颈通常在网络和 SSH 延迟上,不在 Python 解释器。先量再优化。

典型场景

你的灌表脚本要写 719 行到腾讯文档,中途某批失败会让整份数据错位。做法:装 python-error-handling + python-resilience,让 AI 把脚本改成「分块 + 幂等 + 失败可续写」:每块写成功后记录偏移量,重跑时从断点继续,异常分类记日志。成果:从「失败就重头再来、还可能写重」变成「断点续传、重复执行结果一致」——这正是你在 3w-5w 档踩过的坑(CSV 超长失败一次就得全重跑)。

一句话结论

写脚本的人应该装的三份:error-handling、resource-management、observability。其余当参考。

📊 完整对比数据见在线总表:WorkBuddy 技能市场全量调研总表(腾讯文档)