python教程技术文章
-
Python sqlite3 的 commit() 结束的是连接上的事务,不会自动关闭 Cursor。本文区分提交后的 fetch、重新 execute、写入游标和 autocommit 场景,给出安全的读取与确认方式。181 收藏 -
Python 3.14 新增的 InterpreterPoolExecutor 能让多个独立解释器并行执行任务。本文用一个可复用的 CPU 密集型示例说明任务拆分、参数传递、Future 收集、异常处理和兼容性取舍。180 收藏 -
Python 可用 zoneinfo.reset_tzpath 在运行时切换 IANA 时区数据目录,但路径必须为绝对路径,且切换不会自动清空 ZoneInfo 缓存。本文给出完整代码,并比较 reset_tzpath、PYTHONTZPATH 与 tzdata 的适用场景。176 收藏 -
Python csv.DictReader 可用 restkey 把一行中超出 fieldnames 的值收集到列表。本文给出最小写法,并说明默认 None 键、多余表头、缺失字段、严格模式和导入审计的处理方式。171 收藏 -
用一个小型异步 worker 说明 Python asyncio 取消任务后的正确收尾方式:在 finally 中释放资源,调用方 await 被取消的 Task,并正确处理 CancelledError。168 收藏 -
asyncio.Barrier 中的等待任务被取消时不会自动把屏障置为 broken;filling 阶段的 n_waiting 会减少,调用方要根据剩余参与者选择补位、abort 或 reset。166 收藏 -
用 Python logging 的 QueueHandler 和 QueueListener 把慢速日志输出移到独立线程,并说明级别、队列满载、prepare 与退出 stop 的关键边界。165 收藏 -
Python sqlite3 中 execute() 成功只代表 SQL 已执行,不代表事务已经提交。本文解释默认事务模式、isolation_level=None、Python 3.12+ autocommit 与 with 连接管理器的区别,并给出可直接排查提交边界的示例。163 收藏 -
Python re 的可选命名分组未参与匹配时默认返回 None,整体匹配失败则返回 None 的 Match。本文用 group、groupdict 和 fullmatch 讲清回溯后的读取方式,并区分缺失字段、空字符串与业务默认值。162 收藏 -
使用 Python sqlite3 读取日期字段时,先注册 date 与 datetime 转换器,再按表声明或查询列别名配置 detect_types,本文给出两种实现和时区、聚合结果的排查边界。159 收藏 -
Python pathlib.Path.walk 剪枝的关键,是保持 top_down=True,并在循环内对 dirnames 做原地删除或切片赋值。本文给出跳过 .git、虚拟环境、依赖目录和标记目录的完整写法,同时说明符号链接与权限错误边界。159 收藏 -
介绍 Python tomllib.loads 的 parse_float 参数,说明如何用 Decimal 或自定义回调替换默认 float,并梳理返回值限制、整数边界和配置精度策略。158 收藏 -
Python socket 已设置 SO_REUSEADDR 仍绑定失败时,先区分 TIME_WAIT、活动监听、IPv4/IPv6 地址范围和 SO_REUSEPORT,再按正确顺序排查。154 收藏 -
Python dataclass 继承后,kw_only 字段必须用关键字传入,但父类字段和子类字段的参数位置可能不同。本文用一个最小示例说明正确调用、签名检查和常见误区。152 收藏 -
Python pathlib 处理相对路径时,应先固定根目录,再用 resolve 消除点段并解析符号链接,完成范围判断后再检查普通文件。本文给出可保留缺失、权限、越界和文件类型错误的运行手册。144 收藏