python教程技术文章
-
通过一个Textual报表小项目说明线程后台任务怎样发送结果消息,由界面处理器更新控件,并处理取消、错误与旧请求覆盖。317 收藏 -
Polars的read_csv会直接读取并返回DataFrame,scan_csv先返回LazyFrame,把过滤和列选择组成查询后再collect执行。本文从返回对象、执行时机、下推优化和调用场景说明两者的选择边界。407 收藏 -
Python Polars 查看 LazyFrame 查询计划,核心是用 explain 对比未优化和优化后的逻辑计划,再用 show_graph 绘制逻辑或物理计划图。本文用一个小项目说明如何读懂过滤下推、列裁剪与执行边界。421 收藏 -
Pydantic 的多个字段联合约束,应按规则范围选择 model_validator 或 field_validator:模型级规则比较完整实例,字段级规则只读取已完成验证的数据。本文用密码确认和区间边界示例说明验证层、顺序和错误处理。210 收藏 -
Pydantic v2的before适合原始输入规范化,after适合类型明确后的业务约束。通过严格整数请求示例说明字段限制、返回值、权限分工与错误日志。469 收藏 -
singledispatchmethod 继承后没有命中重载,通常不是继承失效,而是分派参数、注册对象或装饰器顺序与预期不同。本文用一个消息适配器项目拆解定位方法。362 收藏 -
Python 的 bisect_left 和 bisect_right 分别找到重复分数的左、右插入点,两个下标组成左闭右开区间,直接切片即可得到全部匹配项。118 收藏 -
遇到遗留命令或 POSIX 系统传来的非 UTF-8 环境变量时,Python 的 os.environb 可以保留原始 bytes。本文按触发场景、支持检查、读取流程和显式解码说明怎样安全接入,并梳理它与 os.environ 的同步关系及失败处理。464 收藏 -
Python contextlib.ContextDecorator 让同一个上下文管理器同时支持 with 和函数装饰器。本文说明重复调用、__enter__ 返回值、__exit__ 异常传播和显式 with 的选择边界。242 收藏 -
Python contextlib.chdir 会在 with 进入时切换当前工作目录,并在退出时恢复进入前的目录。本文用嵌套和异常场景说明恢复顺序,再解释线程、异步和 yield 场景的全局状态风险。158 收藏 -
Python functools.cached_property 的缓存写在实例同名属性上。修改源数据后删除该属性,下一次读取就会重新计算;本文同时说明 __dict__、__slots__ 与并发访问边界。463 收藏 -
Python 3.10 起,bisect.insort 可以用 key 提取对象的排序字段:key 只参与二分查找,插入时仍保留完整对象。本文用一个小型排行榜说明重复分数、insort_left 与列表插入复杂度。106 收藏 -
文章 · python教程 | 2星期前 | 标准库 · python · 数据处理 · 问题排查 · collections.Counter 库存扣减 Python Counter.subtract 缺失项目 负计数
Counter.subtract 会保留零值和负值,真正判断缺失项目不能只看扣减结果。本文用库存与需求示例区分原始不存在、数量不足和恰好用完,并给出可复用的诊断函数。410 收藏 -
解释 ChainMap 查找层与写入层的差异,演示用 maps 显式更新指定配置、用 new_child 隔离修改,以及何时应该封装深层写入规则。390 收藏 -
Python defaultdict 的下标读取会触发 __missing__,调用 default_factory 并把缺省值写回字典。本文对比 []、get()、in 和 keys/items 的差异,帮助你区分主动初始化与只读查询。482 收藏