python教程技术文章
-
Python 3.11 起可以用标准库 tomllib 读取 TOML,但读取成功不等于配置可用。本文从缺失键和类型不符两个现场入手,给出默认值、类型校验与错误定位的可复用写法。374 收藏 -
文章 · python教程 | 3星期前 | 配置管理 · logging · 故障排查 · Python教程 · Python logging.config.dictConfig 日志热更新 disable_existing_loggers 日志回滚
Python 用 logging.config.dictConfig 更新日志配置时,最容易误伤已有日志器、重复打开文件句柄或留下半套配置。本文用可回滚的热更新流程拆解 disable_existing_loggers、incremental 和文件处理器的边界,并给出复查方法。214 收藏 -
Python 项目里相对路径不稳定,通常不是 pathlib 的问题,而是把当前工作目录 cwd 和脚本位置 __file__ 混在了一起。本文用配置文件读取与 pytest 临时目录示例,拆开两种路径基准,并给出可验收的写法。131 收藏 -
文章 · python教程 | 3星期前 | 资源管理 · python · 异步编程 · Python contextlib.aclosing 异步资源清理 aclose async generator
contextlib.aclosing 用异步上下文管理器把 aclose() 纳入 async with 的退出阶段,适合异步生成器和带异步清理方法的资源。本文从一个流式读取场景拆解退出顺序、异常传播和可回归的测试验收。408 收藏 -
Python 3.13 为 asyncio.Queue 增加 shutdown() 与 QueueShutDown。本文用一个批处理队列案例,拆开生产者停止、消费者排空、join 完成和 immediate=True 强制终止的边界。351 收藏 -
Python 3.14 标准库支持 UUIDv7。本文从日志和数据库主键场景拆开时间字段、随机性、字符串排序与时钟回拨边界,并给出迁移验收方法。274 收藏 -
文章 · python教程 | 3星期前 | 并发 · 线程池 · python · Python 队列 超时 背压 concurrent.threading_pool ThreadPoolManager 任务洪峰
ThreadPoolManager 常见误区是“把任务都扔进去”,但当 submit 激增时会出现排队膨胀、内存抖动和超时误判。本文给出可落地的限流策略。481 收藏 -
Python 3.14 为并发任务映射增加 buffersize 参数。本文用一个可运行的批处理例子说明它如何限制未产出结果的任务数量,并拆开结果顺序、异常传播、chunksize 与停机回收的边界。101 收藏 -
用 memoryview.cast 在不复制缓冲区的前提下读取固定长度二进制记录,重点检查格式字符串、C 连续布局、字节序与越界风险。226 收藏 -
Python 生成器提前停止时,close() 会通过 GeneratorExit 触发 finally。本文用可复现代码说明未启动、已暂停、清理分支和回归测试的边界,帮助稳定释放文件等资源。485 收藏 -
Python 生成器被提前停止时,close() 会通过 GeneratorExit 触发 finally,但未开始执行、被吞异常或引用仍存活等情况会改变清理结果。本文用可复现代码拆开这些边界。373 收藏 -
Python 3.13 已将 typing.AnyStr 标记为弃用,官方建议改用新的类型参数语法。本文用字符串与字节串函数拆解迁移写法、运行版本和静态检查门禁。238 收藏 -
Python 3.13 新增 dbm.sqlite3 后,dbm 的键值接口可以落到 SQLite 文件上。本文用缓存索引小实验说明 flag、字节值、关闭、SQLite 直读和旧版本兼容边界。188 收藏 -
Python 3.14 会在 return、break 或 continue 让控制流离开 finally 时发出 SyntaxWarning。本文复现异常被吞掉的旧写法,解释清理代码与返回值的边界,并给出兼容迁移和 CI 检查清单。471 收藏 -
Python 3.13 引入 copy.replace() 后,可以用同一套入口更新 dataclass、namedtuple 和实现 __replace__() 的自定义对象。本文用订单配置示例核对新对象、浅层共享、字段校验与旧版本兼容边界。439 收藏