python教程技术文章
-
解释 Python quopri 的 header=False 与 header=True 为什么对下划线产生不同结果,并区分普通正文、MIME Q 编码头和完整邮件头的正确处理方式。491 收藏 -
Python plistlib 默认写出 XML plist;本文说明如何使用 FMT_BINARY 生成二进制 plist,并比较 dump 与 dumps、固定字符串键、排序策略以及 TypeError 和 OverflowError 的处理边界。491 收藏 -
文章 · python教程 | 2星期前 | 线程池 · 异步编程 · Python教程 · Python contextvars ContextVar asyncio.to_thread 线程上下文
asyncio.to_thread 会把调用上下文复制到工作线程,因此线程函数可以读取请求标识,但在线程内 set() 不会回写事件循环;如果上下文里装的是列表或字典,原地修改仍可能共享同一个对象引用。489 收藏 -
spawn 会用全新 Python 解释器导入入口模块,因此进程创建必须放进 main 保护。本文用最小示例解释导入边界、可 pickle 要求和稳定检查方法。488 收藏 -
Python sqlite3 的 with 代码块并不等于关闭连接。本文从连接上下文、事务模式和线程边界解释数据未提交的原因,并给出可直接排查的写法。488 收藏 -
Python sqlite3 的 autocommit 要先选清自动提交、显式事务或旧式 isolation_level。本文用连接参数、in_transaction 和重连验证排查提交回滚问题,并给出 Python 3.11 及更早版本的兼容写法。488 收藏 -
Python dataclass 处理 list、dict 等可变字段时,不能把共享对象直接当默认值;应使用 field(default_factory=...) 让每个实例按需创建独立容器。本文说明调用边界、常见错误和继承场景。488 收藏 -
Python 正则匹配后,用 re.Match.groupdict 将命名捕获组读取为字典;本文说明基础用法、可选分支默认值,以及它与 group、groups 的职责边界。488 收藏 -
Python 3.13 新增 typing.get_protocol_members,可返回 Protocol 定义及继承得到的成员名称 frozenset。本文通过一次成员探测故障复盘,说明正确读取、稳定排序、泛型别名边界、TypeError 处理和旧版本兼容写法。487 收藏 -
Python 正则防护需要同时考虑输入上限、模式设计与调用预算,说明标准库 re 和第三方 regex 的超时区别,并用状态封装区分输入拒绝、不匹配和超时。487 收藏 -
TaskGroup 首个非取消异常会取消尚未完成的同组任务,并在退出时组合已产生的异常。本文用 except* 分类 ExceptionGroup,并演示如何把普通业务异常转成结果对象,从而汇总每个异步任务的失败状态。486 收藏 -
本文介绍使用 pandas 的 melt() 方法将多个同质 来源列(如 Source1site、Source2site、Source3site)高效合并为一列 MergeSourceSite,同时完整保留 CompanyName、City 等关联字段,并自动去重、清理空值、重排索引。 这段内容主要485 收藏 -
Python 生成器提前停止时,close() 会通过 GeneratorExit 触发 finally。本文用可复现代码说明未启动、已暂停、清理分支和回归测试的边界,帮助稳定释放文件等资源。485 收藏 -
读取 CSV 不只是选择一个库。本文从逐行清洗、表格分析和大文件扫描三个场景比较 Python csv、pandas.read_csv 与 polars.read_csv,说明类型推断、内存、坏行和后续查询边界,给出可核对的选型规则。484 收藏 -
Python queue.Queue 的 join() 卡住,通常不是队列里还有元素,而是消费者取走任务后少调用了 task_done()。本文解释未完成计数,给出 finally 配对写法、异常处理和停机复查清单。484 收藏