为什么这里输出的是[3,6],而不是[3],想要详细一点的解答
5条回答 默认 最新
- A Python 萌新花花 2022-06-16 13:24关注
因为for在开始的时候,执行到的索引是固定的,所以如果你remove了东西,那么原来的所有数就会往左移,但是索引固定了,就导致remove的时候,一下跨了两个数。
【6,3,6,6,6】原来是这个,索引在0,remove了第一个6
变成【3,6,6,6】但是这个时候,索引+1,变成1了。这时候就“不对劲“了。因为索引为1的是6,不是原来的3。
然后索引为1,那么就会remove现在的第一个6,变成【3,6,6】。
这个时候就更”不对劲“了。因为现在索引+1,变成2了。2的时候虽然会remove掉最后一个6,但是你会发现这个时候剩了一个6。
所以,解决方法就是倒序来remove,从尾开始,这样索引不会变本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥50 如何在不能联网影子模式下的电脑解决usb锁
- ¥20 服务器redhat5.8网络问题
- ¥15 如何利用c++ MFC绘制复杂网络多层图
- ¥20 要做柴油机燃烧室优化 需要保持压缩比不变 请问怎么用AVL fire ESE软件里面的 compensation volume 来使用补偿体积来保持压缩比不变
- ¥15 python螺旋图像
- ¥15 算能的sail库的运用
- ¥15 'Content-Type': 'application/x-www-form-urlencoded' 请教 这种post请求参数,该如何填写??重点是下面那个冒号啊
- ¥15 找代写python里的jango设计在线书店
- ¥15 请教如何关于Msg文件解析
- ¥200 sqlite3数据库设置用户名和密码