python教程技术文章
-
weakref.finalize 适合为文件句柄、临时目录等资源安排对象回收后的兜底动作,但回调参数、存活引用和解释器退出阶段都有明确边界。本文用可运行的小例子拆解注册、触发、detach 与 atexit 行为。200 收藏 -
Python 3.13 新增 os.process_cpu_count(),它读取当前进程可用的逻辑 CPU 数,可能小于 os.cpu_count()。本文用容器配额和线程池示例拆开默认值、None 回退、显式 max_workers 与验收边界。197 收藏 -
金额计算不要直接依赖 float 的显示结果。本文用 Python decimal.Decimal 与 quantize 固定两位小数,拆开 ROUND_HALF_UP 的舍入选择、Inexact 校验和 InvalidOperation 异常边界,给出可复查的入账处理写法。196 收藏 -
Python logging.Filter 可以在 LogRecord 交给处理器前补充请求上下文。本文用 trace_id 和 operator 两个字段演示过滤器挂载位置、Formatter 字段匹配、多处理器分流及缺失字段的安全处理。187 收藏 -
Python 3.14 的 free-threaded 构建可以让线程真正并行,但收益取决于任务类型、共享状态和第三方扩展。本文用可重复的基准测试拆解线程加速、锁竞争和自动启用 GIL 的回退边界。183 收藏 -
用 Python pathlib.Path.rename 完成文件改名时,同名目标在 Windows 与 Unix 上的行为并不一样。本文从预检查、临时名切换和失败回滚三个环节,给出可复现的安全改名脚本。182 收藏 -
用 pathlib.Path.rglob 扫描项目文件时,如何跳过隐藏目录并保留需要的隐藏文件?本文从遍历结果、路径过滤和符号链接边界写出可验证的 Python 实现。181 收藏 -
文章 · python教程 | 3天前 | 日志 · 调试 · 异常处理 · python · 错误报告 异常链 Python traceback.TracebackException capture_locals
TracebackException 适合把异常捕获和展示解耦:保留异常链、按需捕获局部变量,再把结果限制在日志字段需要的范围。本文用紧凑示例说明 from_exception、format、chain、capture_locals 和敏感数据边界。179 收藏 -
Python 3.14 将函数、类和模块注解改为默认延迟求值,并新增 annotationlib。本文用最小示例说明 VALUE、FORWARDREF、STRING 三种读取格式,梳理 inspect.get_annotations 的兼容写法与升级验收边界。171 收藏 -
金额计算最怕精度和舍入规则藏在全局状态里。本文用 Python decimal.Context 固定局部精度,拆开量化、异常陷阱和线程上下文的边界,并给出可回归的验收样例。168 收藏 -
Python 的 functools.lru_cache 会保护缓存结构,但不会保证同一个冷键只计算一次。本文用并发时序拆解命中、未命中、重复计算和参数规范化边界,并给出可验收的使用方式。168 收藏 -
文章 · python教程 | 17小时前 | 数据库 · python · 备份 · SQLite · Python sqlite3 Connection.serialize Connection.deserialize 内存快照
用 Python sqlite3.Connection.serialize 把内存数据库导出为 bytes,再用 deserialize 恢复到新连接;文章说明提交时机、main 数据库、SQLite 能力和快照边界。167 收藏 -
Python heapq.merge 可以把多个已经排好序的日志流合并成一个惰性迭代器。本文用时间戳日志说明 key、reverse、内存占用和乱序输入的真实边界。167 收藏 -
QueueHandler 能把业务线程与日志写盘拆开,但队列满载、监听线程退出和异常日志递归仍会让系统失去可观测性。本文从负载约束、方案取舍和验收指标出发,给出一套可落地的降级做法。164 收藏 -
用一个可运行的消息格式化例子拆解 functools.singledispatch:默认实现、register 注册、按第一个参数类型 dispatch,以及继承匹配和调试边界。161 收藏