对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中线程问题的简单讲解
Apr 03 Python
python提取页面内url列表的方法
May 25 Python
Python的for和break循环结构中使用else语句的技巧
May 24 Python
python 日志增量抓取实现方法
Apr 28 Python
详解python的四种内置数据结构
Mar 19 Python
Python使用微信接入图灵机器人过程解析
Nov 04 Python
Python高阶函数、常用内置函数用法实例分析
Dec 26 Python
详解django中Template语言
Feb 22 Python
python GUI库图形界面开发之PyQt5滑块条控件QSlider详细使用方法与实例
Feb 28 Python
python各种excel写入方式的速度对比
Nov 10 Python
用python对excel进行操作(读,写,修改)
Dec 25 Python
Python实现学生管理系统并生成exe可执行文件详解流程
Jan 22 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
php 操作excel文件的方法小结
2009/12/31 PHP
php生成excel文件的简单方法
2014/02/08 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
TP5框架请求响应参数实例分析
2019/10/17 PHP
Javascript 检测、添加、移除样式(className)函数代码
2009/09/08 Javascript
javascript学习基础笔记之DOM对象操作
2011/11/03 Javascript
将光标定位于输入框最右侧实现代码
2012/12/04 Javascript
PHP PDO操作总结
2014/11/17 Javascript
jQuery经过一段时间自动隐藏指定元素的方法
2015/03/17 Javascript
日常收集整理的JavaScript常用函数方法
2015/12/10 Javascript
详解Js模板引擎(TrimPath)
2016/11/22 Javascript
vue项目打包之后背景样式丢失的解决方案
2019/01/17 Javascript
Vue项目服务器部署之子目录部署方法
2019/05/12 Javascript
python正则表达式及使用正则表达式的例子
2018/01/22 Python
Python自定义线程类简单示例
2018/03/23 Python
python求加权平均值的实例(附纯python写法)
2019/08/22 Python
浅谈对pytroch中torch.autograd.backward的思考
2019/12/27 Python
matplotlib jupyter notebook 图像可视化 plt show操作
2020/04/24 Python
使用Python将图片转正方形的两种方法实例代码详解
2020/04/29 Python
python爬虫构建代理ip池抓取数据库的示例代码
2020/09/22 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
2020/10/18 Python
python抢购软件/插件/脚本附完整源码
2021/03/04 Python
深入解析HTML5中的Blob对象的使用
2015/09/08 HTML / CSS
澳大利亚排名第一的在线酒类商店:MyBottleShop
2018/04/26 全球购物
Spartoo瑞典:鞋子、包包和衣服
2018/09/15 全球购物
恒华伟业笔试面试题
2015/02/26 面试题
监理员的岗位职责
2013/11/13 职场文书
迅雷Cued工作心得体会
2014/01/27 职场文书
市场部管理制度
2014/02/02 职场文书
劳资协议书范本
2014/04/23 职场文书
施工安全生产承诺书
2014/05/23 职场文书
2015教师年度工作总结范文
2015/04/07 职场文书
六一儿童节新闻稿
2015/07/17 职场文书
2015年电气技术员工作总结
2015/07/24 职场文书
css3新特性的应用示例分析
2022/03/16 HTML / CSS
使用vue判断当前环境是安卓还是IOS
2022/04/12 Vue.js