python教程技术文章
-
用 Python datetime 与 ZoneInfo 识别回拨重复时间,枚举 fold 候选、经 UTC 往返排除缺失时间,并说明单次事件的存储、比较和展示规则。320 收藏 -
嵌套 asyncio.TaskGroup 发生异常时,内层任务组会先整理自己的 ExceptionGroup,外层再处理收到的异常与取消信号。本文用一个最小结构解释传播边界、except* 分流方式、取消例外和日志防复发规则。319 收藏 -
Python SharedMemory 中,close 只关闭当前实例持有的句柄,unlink 才是删除共享内存块;创建者、连接者和最后责任方要按不同角色安排清理,独立进程还要留意 track 的资源跟踪边界。319 收藏 -
先判断异常发生在任务函数、结果获取、序列化还是 worker 生命周期,再选择捕获、修复或重建进程池。319 收藏 -
解释 importlib.resources.as_file 返回路径的生命周期:需要从 zip 等容器提取时,临时文件或目录会在退出上下文后清理;并给出块内使用、ExitStack 延长借用期和复制持久化三种写法。318 收藏 -
介绍 Python tomllib.loads 解析内存 TOML 字符串的方法,说明返回类型、嵌套字段、浮点数处理和 TOMLDecodeError 错误边界。318 收藏 -
通过一个Textual报表小项目说明线程后台任务怎样发送结果消息,由界面处理器更新控件,并处理取消、错误与旧请求覆盖。317 收藏 -
当函数既能自己创建资源,也能复用调用方传入的资源时,nullcontext 可以作为无操作上下文管理器,让同步 with 和异步 async with 各自保持单一入口。本文结合文件与 HTTP 会话示例,说明 enter_result、Python 版本、资源所有权和常见报错。316 收藏 -
Python sqlite3 的 set_authorizer 可以在 SQL 编译阶段按操作码决定放行、拒绝或隐藏列读取。本文用一个只读连接示例说明回调参数、三种返回值、连接范围与不能替代的资源限制。314 收藏 -
asyncio.wait 配合 FIRST_COMPLETED 可以先拿到已经完成或被取消的任务,并把仍在运行的任务放进 pending 集合。本文说明如何读取结果、处理超时,以及为什么必须显式决定 pending 任务的后续生命周期。314 收藏 -
用 ParamSpec 和 Callable[P, R] 为装饰器转发原函数参数与返回值类型;当装饰器注入固定参数时,再用 Concatenate 表达新的调用签名。309 收藏 -
用 Python email.headerregistry.Address 读取邮箱地址时,display_name、username、domain 和 addr_spec 的职责并不相同。本文从单地址头、多地址头和构造序列化三个场景说明怎样分别取值,避免把显示名当成实际邮箱地址。308 收藏 -
Python SpooledTemporaryFile 可调用 rollover() 在未超过 max_size 时主动迁移到磁盘临时文件。本文用完整示例说明手动落盘、文件指针保持、fileno() 隐式触发和自动清理边界。307 收藏 -
asyncio.PriorityQueue 会按最低优先级先取数据,但相同优先级的任务如果直接携带字典或对象,可能出现顺序不稳定甚至比较异常。本文用 priority、sequence、payload 三元组固定同级任务顺序,并说明生产者、消费者、join、取消和容量边界。306 收藏 -
Python 3.14 的 pathlib.Path.copy() 可以复制文件或目录树。本文说明目标路径、符号链接跟随、preserve_metadata 元数据保留和跨平台边界,帮助你把本地复制写得清楚。306 收藏