对python list 遍历删除的正确方法详解


Posted in Python onJune 29, 2018

在遍历list的时候,删除符合条件的数据,可是总是报异常,代码如下:

num_list = [1, 2, 3, 4, 5]
print(num_list)
 
for i in range(len(num_list)):
 if num_list[i] == 2:
  num_list.pop(i)
 else:
  print(num_list[i])
 
print(num_list)

原因是在删除list中的元素后,list的实际长度变小了,但是循环次数没有减少,依然按照原来list的长度进行遍历,所以会造成索引溢出。

解决方案:倒序循环删除

num_list = [1, 2, 3, 4, 5]
print(num_list)
 
for i in range(len(num_list)-1, -1, -1): # for i in range(0, num_list.__len__())[::-1]
 if num_list[i] == 2:
  num_list.pop(i)
 else:
  print(num_list[i])
 
print(num_list)

以上这篇对python list 遍历删除的正确方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用Python编写脚本使IE实现代理上网的教程
Apr 23 Python
Python文档生成工具pydoc使用介绍
Jun 02 Python
简单谈谈Python中的反转字符串问题
Oct 24 Python
python中字符串内置函数的用法总结
Sep 13 Python
python实现三维拟合的方法
Dec 29 Python
Python字典遍历操作实例小结
Mar 05 Python
python+pyqt5实现图片批量缩放工具
Mar 18 Python
pytorch逐元素比较tensor大小实例
Jan 03 Python
使用Tensorboard工具查看Loss损失率
Feb 15 Python
Python字典fromkeys()方法使用代码实例
Jul 20 Python
python本地文件服务器实例教程
May 02 Python
Python正则表达式中flags参数的实例详解
Apr 01 Python
通过Python模块filecmp 对文件比较的实现方法
Jun 29 #Python
Python之列表的插入&替换修改方法
Jun 28 #Python
python 寻找list中最大元素对应的索引方法
Jun 28 #Python
对numpy.append()里的axis的用法详解
Jun 28 #Python
Python读取英文文件并记录每个单词出现次数后降序输出示例
Jun 28 #Python
将Dataframe数据转化为ndarry数据的方法
Jun 28 #Python
Python格式化日期时间操作示例
Jun 28 #Python
You might like
解析mysql中UNIX_TIMESTAMP()函数与php中time()函数的区别
2013/06/24 PHP
php中smarty变量修饰用法实例分析
2015/06/11 PHP
YII Framework框架教程之使用YIIC快速创建YII应用详解
2016/03/15 PHP
PHP运行模式汇总
2016/11/06 PHP
Lumen timezone 时区设置方法(慢了8个小时)
2018/01/20 PHP
JS实现打开本地文件或文件夹
2021/03/09 Javascript
document 和 document.all 分别什么时候用
2006/06/22 Javascript
JavaScript 高级语法介绍
2009/06/15 Javascript
JavaScript转换农历类实现及调用方法
2013/01/27 Javascript
JS获取图片实际宽高及根据图片大小进行自适应
2013/08/11 Javascript
jquery自定义下拉列表示例
2014/04/25 Javascript
jquery text()方法取标签中的文本
2014/07/25 Javascript
Flexigrid在IE下不显示数据的有效处理方法
2014/09/04 Javascript
AngularJS中使用HTML5手机摄像头拍照
2016/02/22 Javascript
js 显示日期时间的实例(时间过一秒加1)
2017/10/25 Javascript
Element输入框带历史查询记录的实现示例
2019/01/15 Javascript
JavaScript canvas绘制渐变颜色的矩形
2020/02/18 Javascript
[45:52]完美世界DOTA2联赛PWL S3 Forest vs INK ICE 第二场 12.09
2020/12/12 DOTA
python代码制作configure文件示例
2014/07/28 Python
Django实现图片文字同时提交的方法
2015/05/26 Python
python检查字符串是否是正确ISBN的方法
2015/07/11 Python
详解Python3中的Sequence type的使用
2015/08/01 Python
利用python获取某年中每个月的第一天和最后一天
2016/12/15 Python
python3 模拟登录v2ex实例讲解
2017/07/13 Python
用Python一键搭建Http服务器的方法
2018/06/01 Python
Python实现Canny及Hough算法代码实例解析
2020/08/06 Python
英国领先的高级美容和在线皮肤诊所:Face the Future
2020/06/17 全球购物
纯净、自信、100%的羊绒服装:360Cashmere
2021/02/20 全球购物
什么情况下你必须要把一个类定义为abstract的
2013/01/06 面试题
求职信写作要突出重点
2014/01/01 职场文书
一月红领巾广播稿
2014/02/11 职场文书
2014教师专业技术工作总结
2014/12/03 职场文书
答谢酒会主持词
2015/07/02 职场文书
python 如何将两个实数矩阵合并为一个复数矩阵
2021/05/19 Python
JavaScript数组reduce()方法的语法与实例解析
2021/07/07 Javascript
zabbix如何添加监控主机和自定义监控项
2022/08/14 Servers