python教程技术文章
-
文章 · python教程 | 2星期前 | 队列 · Python教程 · asyncio · Python 消费者 asyncio.Queue Queue.shutdown QueueShutDown
Python 3.13 为 asyncio.Queue 增加 shutdown() 和 QueueShutDown。本文按新旧版本对比生产者停止、消费者排空、join 收尾和兼容降级,给出可直接改造的队列关闭写法。133 收藏 -
Python 3.12+ 可用类型参数语法改写通用类、函数和类型别名。本文用 Box[T]、first[T] 与 Pair[T] 说明迁移步骤,并列出 Python 3.11 兼容边界。132 收藏 -
Python sched 取消尚未触发的定时事件,需要保存 scheduler.enter 或 enterabs 返回的事件对象,再交给同一个调度器的 cancel;事件不在队列时会抛出 ValueError。本文说明事件句柄、重复取消和业务任务映射的处理方式。132 收藏 -
Python zipfile 默认支持 ZIP64 扩展,但 allowZip64 与 force_zip64 解决的是不同问题。本文分别说明已知大小文件和未知大小流式数据的写法,并解释 LargeZipFile 的触发边界与兼容注意。131 收藏 -
plistlib.UID 不是普通 int 的别名,而是为二进制 plist 保留 UID 类型语义的包装对象。本文用一个小工具说明类型判断、数值转换、写回格式和兼容边界。131 收藏 -
InterpreterPoolExecutor 隔离的是工作解释器,不保证每次 submit 都获得全新解释器。本文说明如何用参数、函数局部状态和返回值避免任务串状态,并比较 initializer 与进程回收方案。130 收藏 -
Python statistics.multimode 会返回所有最高频值,并按这些值在原始数据中首次出现的顺序排列。本文用小例子说明结果语义、空输入、可哈希要求和业务侧二次排序边界。130 收藏 -
解释 BytesIO.getbuffer 导出的 memoryview 为何阻止扩容和关闭,用字节包编辑示例展示等长修改、视图释放、子视图管理及 getvalue 的取舍。130 收藏 -
Textual Worker取消后,异步任务应让CancelledError穿过并在finally中释放资源;线程Worker不能强制终止,需要轮询is_cancelled,在安全检查点停止,并通过call_from_thread更新界面。129 收藏 -
从大文件生成器管道的三个常见故障入手,讲清同步按需拉取的背压边界、提前停止时的关闭级联,以及保留行号和原始原因的异常传播写法。126 收藏 -
colorsys使用归一化RGB坐标,不能靠改成浮点自动识别0到255色值。通过原创示例与两张结构图,说明输入归一化、HSV范围、严格接口包装及反向量化策略。123 收藏 -
Python 的 bisect_left 和 bisect_right 分别找到重复分数的左、右插入点,两个下标组成左闭右开区间,直接切片即可得到全部匹配项。118 收藏 -
Python 的 zoneinfo 用 IANA 区域名创建带时区 datetime。本文说明本地时区构造、astimezone 与 replace 的区别、tzdata 部署依赖,以及夏令时重复时间的 fold 处理。118 收藏 -
Python typing.Self 适合标注返回当前实例的链式方法,也能用于随 cls 创建同类实例的 classmethod。本文结合继承、上下文管理器和固定返回基类的反例,说明如何选择准确的返回类型。118 收藏 -
asyncio.Event 是可复用的状态标志,不是一次性消息队列。本文说明 set、wait、clear 的广播关系,并对比 Queue 与 Condition,帮助你避免清除时机不当造成的等待遗漏。116 收藏