-
Python asyncio.timeout 会在截止时间到达时取消当前任务,并在上下文管理器退出时把 asyncio.CancelledError 转换为内置 TimeoutError。本文给出最小写法,再说明异常捕获位置、动态截止时间、expired 状态、嵌套超时和 wait_for 的区别。
-
Python str.expandtabs 会按照当前字符列和 tabsize 把制表符展开到下一个制表位。本文用小例子说明默认 8 列、自定义 tabsize、换行重置,以及字符计数和终端显示宽度的区别。
-
Python 3.12 起可以用 sqlite3.Connection.setconfig() 设置布尔型 SQLite DBCONFIG 选项,再用 getconfig() 读取当前连接状态。本文以外键配置为例,说明调用方式、版本与底层 SQLite 能力边界,以及生产初始化策略。
-
str.isidentifier() 只判断字符串是否符合 Python 标识符的词法形态,def 和 class 仍可能返回 True。本文结合 keyword.iskeyword() 说明两层判断的分工,并给出可复用的命名校验函数。
-
为自定义对象实现排序时,Python functools.total_ordering 可以根据 __eq__ 和一个排序比较方法补齐其余比较运算。本文用一个可排序任务对象说明比较键、NotImplemented、继承边界与性能取舍。
-
Python 3.13 引入的 Path.from_uri 能解析 file URI;Python 3.14 进一步明确 authority 行为。本文用 UNC 示例说明 Windows 与非 Windows 的差异、绝对路径要求和兼容处理。
-
说明Python pathlib.Path.readlink的调用方式、相对目标基准目录及失效链接处理,区分保存目标与最终解析路径,并给出版本迁移和异常处理要点。
-
Python csv 读写文件使用 newline 空字符串,可让文本层保留换行并交由 CSV 模块处理。本文解释多行字段、导出空行及记录结束符的区别,并给出读写示例。
-
Python 浮点数比较不要只写 a == b。本文用 math.isclose 拆解 rel_tol 与 abs_tol 的作用,说明不同数量级数据如何选择容差,并补充零、NaN 和无穷大的边界。
-
讲清 Python TextIOWrapper.reconfigure 的编码、换行、错误处理和缓冲设置,重点说明读取前可调整、调用前会 flush,以及已读数据后不能修改 encoding 和 newline 的边界。
-
Python decimal.Context.flags 会保留计算过程中遇到的信号。本文用 clear_flags() 和 localcontext() 建立独立观察窗口,并说明 Rounded、Inexact 怎样帮助定位舍入与精度损失。
-
Python concurrent.futures.wait 会把 Future 分成 done 与 not_done 两个集合。本文说明 return_when、timeout 的边界,以及如何读取结果、处理异常并取消尚未开始的任务。
-
本文用原创示例说明 Python contextlib.chdir 如何在同步文件任务中临时切换工作目录、自动恢复原目录,并解释嵌套、异常、线程、异步、生成器和旧版本兼容边界。
-
通过一个紧凑的 Python logging 配置,说明 RotatingFileHandler 如何按文件大小轮转日志、保留备份数量,并解释 maxBytes、backupCount、encoding、delay 以及按时间轮转的边界。
-
用 Python sqlite3.Connection.create_function 把 callable 注册为 SQLite SQL 函数,讲清固定参数、可变参数、deterministic、返回值、异常调试和移除函数的边界。