在for循环遍历列表的过程中不能删除列表中的元素
来源:互联网 发布:javac 执行java文件 编辑:程序博客网 时间:2024/06/05 18:19
在刷题的时候碰到一件很有意思的事,就是在Python中用循环遍历列表中元素的时候,感觉还是按照下标进行访问的,这时如果删除掉了已经遍历到的元素的时候,那么删除元素之后的列表的下标会重新排序,但是循环还是按照循环开始的时候列表的下标进行访问的,这时会导致有些元素访问不到的情况。具体见代码。
words = ["a", "b", "c", "d"]flag = 1for word in words: print(word) if flag == 1: words.remove(word) flag = 0
运行的结果
acd
一开始的下标是[a,b,c,d]对应[0,1,2,3],删除了a之后,[b,c,d]下标为[0,1,2],但是由于第二轮循环遍历的下标是1,这时循环就访问c,跳过了b。
阅读全文
0 0
- 在for循环遍历列表的过程中不能删除列表中的元素
- 在一个循环中删除一个列表中的元素
- foreach循环中删除一个列表中的元素报错
- python 如何在一个for循环中遍历两个列表
- python 如何在一个for循环中遍历两个列表
- Java循环中删除一个列表元素
- 为什么不能在ArrayList的For-Each循环中删除元素
- for循环在列表中的使用
- 列表元素的删除操作for...remove
- java循环删除列表元素
- java swing 中的列表框JList如何在程序中动态的添加和删除元素
- Python-for循环遍历列表
- stl容器在循环遍历中删除元素的方式
- 在循环的过程中删除数组元素的问题
- stl在遍历过程中删除元素
- STL容器:在遍历的过程中删除元素
- 在遍历List的过程中删除元素
- 在循环过程中删除List的元素
- linux文件管理系统Ext以及inode的概述
- MVP
- 有用
- C++宏定义详解
- PHP有关的设计模式
- 在for循环遍历列表的过程中不能删除列表中的元素
- shiro介绍
- 接口限流算法总结
- 校内赛 不正常序列 堆 解题报告
- Google object detection API
- jQuery实现jQuery-form.js实现异步上传文件
- git从已有分支拉新分支开发
- c++中vector向量几种情况的总结(向量指针,指针的向量)
- Notice: Undefined index: user in D:\phpStudy\WWW\js\ls\lsmc\php\add.php on line 9