JavaScript Set 遍历中修改:新加入的值为什么也会在本轮出现 用 Set 保存待处理编号时,一个处理函数顺手加入了新编号,结果这次循环比预想多执行了一轮。另一个函数删掉尚未轮到的编号,它又完全没有被处理。这里没有并行线程参与:即使同一段同步代码,遍历过程中改变集合,也会改变后续... yunqueblog/ 技术教程/ 2026-10-01/ 3 阅读
JavaScript 生成器提前退出:for...of 的 break 怎样触发 finally 清理 生成器适合逐条产生数据,但“调用方不再读取”和“生成器已经清理”并不是同一件事。读取第一条后就离开页面,如果调用方式只是不再执行 next,函数可能仍停在 yield 处。资源清理什么时候发生,需要看迭代是怎样结束的... yunqueblog/ 技术教程/ 2026-10-01/ 3 阅读
Python 生成器用完了怎么办:可重复遍历需要重新创建入口 导入任务先遍历一次检查格式,再遍历一次求和,结果却突然变成零。代码没有报错,数据文件也没有变化,问题可能就在函数接收的不是一份可重复读取的数据,而是一个已经走到末尾的生成器对象。重新写一个 for 循环,不会自动倒带... yunqueblog/ 技术教程/ 2026-10-01/ 2 阅读
Python itertools.tee 分流:两个迭代器为什么仍会一起占用内存 一份数据既要生成预览,又要计算汇总,最自然的想法是把迭代器分成两路。调用 tee 后,确实可以分别推进两个结果,但这不意味着复制了两个独立数据源。它们仍从同一个上游取值,只是各自记录阅读位置,暂存尚未被其他分支追上的... yunqueblog/ 技术教程/ 2026-10-01/ 3 阅读
Python zip 严格配对:长度不一致何时才报错,已经做的操作怎么办 两列数据配对之前,先决定能否少一行导入清单时,一列是物品编号,另一列是对应数量。如果编号有三项,数量只有两项,默认的 zip 会在较短输入结束时停止,第三个编号不会出现在结果里。程序正常结束,却少处理一项,这种错误往... yunqueblog/ 技术教程/ 2026-10-01/ 4 阅读
Python groupby 分组实战:相邻片段和全局汇总是两种问题 先用一条交错记录确定需求假设流水按到达顺序记录为 A 收到两件、A 收到三件、B 收到七件、A 又收到五件。运营想看每段连续处理量,财务想看每位客户的总量。输入完全相同,答案却不同:前者有三段,后者只有两个客户。选工... yunqueblog/ 技术教程/ 2026-10-01/ 6 阅读