python教程技术文章
-
Python dataclass 继承后,kw_only 字段必须用关键字传入,但父类字段和子类字段的参数位置可能不同。本文用一个最小示例说明正确调用、签名检查和常见误区。152 收藏 -
文章 · python教程 | 3星期前 | 并发 · 消息队列 · 异步编程 · Python教程 · 性能稳定性 · Python 消费者 超时 Queue asyncio 哨兵 asyncio.Queue task_done
asyncio.Queue 的任务处理结束,不等于消费者协程会自动结束。本文用固定数量哨兵、task_done()、gather() 和 wait_for() 组成可验证的优雅停机流程,说明有界队列、异常回收与超时检查的边界。151 收藏 -
Python 3.15 的 webbrowser.MacOS 改用 /usr/bin/open。本文用 URL 解析和 HTTP(S) 白名单,说明如何在 macOS 自动化脚本中避开非 HTTP(S) 输入的文件注入边界。149 收藏 -
文章 · python教程 | 3星期前 | 数据校验 · Python教程 · dataclasses · 类型标注 · Python 数据类 dataclasses InitVar __post_init__
dataclasses.InitVar 是只参与初始化、不保存为实例字段的伪字段。本文用配置参数注入和输入校验示例,说明它如何进入 __post_init__、为何不出现在 fields() 与 asdict() 中,以及序列化时应如何设计。147 收藏 -
Python logging 同一条日志打印两遍,通常不是 log() 调用了两次,而是子 logger 和 root logger 都挂了 Handler,记录又沿层级传播。本文给出定位清单和两种单一责任点的修复方式。144 收藏 -
Python csv.DictReader 读取列数不稳定的 CSV 时,可以用 restkey 接住多余字段,用 restval 区分缺失字段,再结合行号和异常归档策略决定放行或拒绝。143 收藏 -
pathlib.glob 的 ** 会递归进入隐藏目录。本文用 Path.parts 过滤任意层级的隐藏目录,再补上文件类型、排序和符号链接边界,给出可复用的 Python 遍历函数。142 收藏 -
Python 日志重复打印通常不是 logger 调用了两次,而是同一条记录沿父子层级交给多个 handler。本文用最小示例拆开 propagate、handler 和配置初始化顺序,给出可复现的排查与修复方法。139 收藏 -
itertools.batched 会惰性地把迭代器分成固定大小的元组,但默认允许最后一批不足 n。本文用订单编号批处理示例说明 strict=True 何时抛出 ValueError、如何选择补齐或拒绝,以及怎样验收没有静默漏数据。133 收藏 -
Python 项目里相对路径不稳定,通常不是 pathlib 的问题,而是把当前工作目录 cwd 和脚本位置 __file__ 混在了一起。本文用配置文件读取与 pytest 临时目录示例,拆开两种路径基准,并给出可验收的写法。131 收藏 -
文章 · python教程 | 2星期前 | python · 异步编程 · 故障排查 · asyncio CancelledError TaskGroup Python 3.14 print_call_graph
Python 3.14 为 asyncio 增加调用图观察能力。本文用 TaskGroup 和取消状态的最小案例,说明如何从悬挂任务的等待链定位问题,并给出可复查的修复步骤。126 收藏 -
Python 相对路径默认以进程当前工作目录为起点,不是以脚本文件所在目录为起点。本文用 pathlib 区分 Path.cwd()、__file__ 和 resolve(),给出项目资源与用户输入的稳定路径写法及排查清单。126 收藏 -
multiprocessing.Queue 的 close() 不会立刻杀掉 feeder thread,它还要把缓冲数据刷入 pipe。本文解释 close、join_thread 与 cancel_join_thread 的边界,并给出避免进程退出卡住的关闭顺序。125 收藏 -
文章 · python教程 | 5天前 | python · asyncio · 异步调试 · 任务排查 · 进程诊断 · ps asyncio await Python 3.14 pstree 任务树
Python 3.14 新增的 asyncio pstree 可以从任务树和 coroutine stack 定位未结束的 await 分支。本文用带任务名的 TaskGroup 示例说明如何取得 PID、读取 pstree、在 await 图循环时切换 ps,并整理平台与权限检查边界。120 收藏 -
文章 · python教程 | 1天前 | python · http.Client · HTTP连接 · Python http.Client HTTPResponse HTTPConnection
讲清 Python http.client 中 HTTPResponse 与 HTTPConnection 的关闭责任,给出完整读取、with 语句、异常收口和连接复用的实用模板。116 收藏