-
ExceptionGroup.split 会递归筛选嵌套异常,并返回匹配组与剩余组。本文给出按异常类型拆分、处理可恢复错误、重新抛出未知错误的紧凑写法。
-
Python NamedTemporaryFile 默认在 close() 时删除文件;需要在 with 块内关闭后按文件名重新打开时,应使用 delete_on_close=False,并注意 Windows 的共享删除权限与退出清理边界。
-
用 ParamSpec 和 Callable[P, R] 为装饰器转发原函数参数与返回值类型;当装饰器注入固定参数时,再用 Concatenate 表达新的调用签名。
-
Python email.headerregistry 会把邮件头解析时发现的 RFC 合规问题放进 Header.defects。本文用 BytesParser 和 policy.default 演示如何读取字段级与消息级缺陷,转换为可落盘诊断记录,并区分缺陷与真正的 HeaderParseError。
-
Python 3.14 新增的多解释器线程池能让多个独立解释器在同一进程中并行处理 CPU 密集任务,但它不共享可变对象。本文用一个可验收的小实验检查参数序列化、解释器隔离、异常回收和退出边界,帮助你判断它是否适合现有 Python 服务。
-
Python 用 QueueHandler 把日志交给后台线程后,有限队列一旦满了就会触发 queue.Full。本文用可复现实验比较默认处理、显式丢弃和阻塞写入,给出压测指标与上线边界。
-
用 Python email.headerregistry.Address 读取邮箱地址时,display_name、username、domain 和 addr_spec 的职责并不相同。本文从单地址头、多地址头和构造序列化三个场景说明怎样分别取值,避免把显示名当成实际邮箱地址。
-
Python SpooledTemporaryFile 可调用 rollover() 在未超过 max_size 时主动迁移到磁盘临时文件。本文用完整示例说明手动落盘、文件指针保持、fileno() 隐式触发和自动清理边界。
-
Python sqlite3 的 autocommit 不是一个简单的提交开关。本文区分 Connection.autocommit 的三种取值、SQLite 底层自动提交状态、with con 显式事务边界和旧式 isolation_level 行为,并给出可直接改写的代码。
-
Python 3.14 的 asyncio.eager_task_factory 可以让同步完成的协程绕过事件循环调度,但它会改变执行时机和任务顺序。本文用缓存命中与真实等待两类协程说明启用方式、性能验证和回归边界。
-
QueueHandler 本身不会自动把日志变成安全的异步链路:如果它把记录送回监听同一队列的日志路径,就会出现递归、重复输出或队列持续增长。本文用最小示例拆开 QueueHandler、QueueListener 与 logger 层级的边界,给出可验证的安全配置。
-
用 Python decimal.quantize 处理金额时,先用 Decimal 字符串和 0.01 量子固定小数位,再按业务规则选择 ROUND_HALF_EVEN、ROUND_HALF_UP 或方向性舍入,避免把截断、中点取偶数和远离零混为一谈。
-
Python logging 出现重复日志,通常是子 logger 自带 handler 后又因 propagate=True 把同一记录交给 root handler。本文用检查代码和配置边界说明如何定位与修复。
-
Python itertools.batched 的 strict=True 只要求最后一批也达到 n 个元素;本文用完整、尾批不足和空输入三个例子说明 ValueError 的边界,并给出整除校验与版本兼容写法。
-
asyncio.PriorityQueue 会按最低优先级先取数据,但相同优先级的任务如果直接携带字典或对象,可能出现顺序不稳定甚至比较异常。本文用 priority、sequence、payload 三元组固定同级任务顺序,并说明生产者、消费者、join、取消和容量边界。