-
我在 for 循环里一边遍历列表一边删元素,结果有些该删的没删掉、还漏处理了一些,我盯着这个忽好忽坏的结果排查了大半天的深度复盘
我用 for 循环遍历列表,遇到满足条件的就 list.remove() 删掉,直觉得很。可结果诡异:有些明明该删的没删掉、还漏处理了一些元素,遍历像在跳着走;两个该删的挨在一起就必漏一个,忽好忽坏难复现。深究 for 遍历列表的机制才懂:它靠索引往后走,我删掉索引 i 的元素后,后面元素整体前移一位,而循环下一步去看 i+1,那个前移到 i 的元素就被跳过了。在迭代一个集合的同时修改它的结构,会…- 0
- 0
列表推导
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!

