Python列表元素删除和remove()方法详解


Posted in Python onJanuary 04, 2021

删除列表中元素的方法有三种:

1. del命令

使用del命令能够删除列表中指定位置上的元素,也可以删除整个列表。

2. pop( )方法

使用列表的pop()方法能够删除并返回列表指定位置(默认为最后一个位置)的元素。

3. remove方法

使用列表的remove()方法能够删除列表中首次出现的指定元素,如果列表中不存在该元素则抛出异常。有的时候可能需要删除列表中某一大量重复的数据,我们很容易就会想到列表的remove()方法,例如:

x=[1,2,1,2,1,2,1,2]
y=[1,1,2,1,2,1,2,1,1,1,2]
for i in x:
 if i==1:
  x.remove(i)
print("List_1=",x)
for i in y:
 if i==1:
  y.remove(i)
print("List_2=",y)

结果:

List_1= [2, 2, 2, 2]
 
List_2= [2, 2, 2, 1, 1, 2]

但是当我们在具体实现时很可能会遇到意想不到的错误,代码有的时候能够达到预期的删除所有重复元素的效果,有的时候只能删除部分重复元素,如上例所示。比较两个列表,发现,列表x中所有的1都是不相邻的,列表y中有的1是相邻的。出现以上问题的原因在于,列表的内存自动管理功能,在删除列表中的元素时,python会自动对列表内存进行收缩,并移动列表中的元素以保证元素之间没有间隙,所以使用“循环+remove()方法”来删除列表中某一重复元素时,如果存在相邻的该元素,在删除前面一个元素后,后一个元素会被移动到刚被删除的这个元素的位置,这样这个元素就“躲过了删除”

Python列表元素删除和remove()方法详解

对于以上问题代码可以做如下修改:

x=[1,2,1,2,1,2,1,2]
y=[1,1,2,1,2,1,2,1,1,1,2]
for i in x:
 if i==1:
  x.remove(i)
print("List_1=",x)
while y.count(1)>0://或者while 1 in y:
 for i in y:
  if i==1:
   y.remove(i)
print("List_2=",y)

输出结果:

List_1= [2, 2, 2, 2]
 
List_2= [2, 2, 2, 2]

总结

到此这篇关于Python列表元素删除和remove()方法详解的文章就介绍到这了,更多相关Python列表元素删除和remove()方法内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python自动安装pip
Apr 24 Python
python如何在终端里面显示一张图片
Aug 17 Python
python使用tkinter实现简单计算器
Jan 30 Python
python实现键盘输入的实操方法
Jul 16 Python
基于Django框架的权限组件rbac实例讲解
Aug 31 Python
使用 Python 处理3万多条数据只要几秒钟
Jan 19 Python
Python基于class()实现面向对象原理详解
Mar 26 Python
如何基于线程池提升request模块效率
Apr 18 Python
django 外键创建注意事项说明
May 20 Python
浅谈opencv自动光学检测、目标分割和检测(连通区域和findContours)
Jun 04 Python
Python基于locals返回作用域字典
Oct 17 Python
python 实现控制鼠标键盘
Nov 27 Python
python3列表删除大量重复元素remove()方法的问题详解
Jan 04 #Python
关于python中remove的一些坑小结
Jan 04 #Python
python中remove函数的踩坑记录
Jan 04 #Python
python 日志模块logging的使用场景及示例
Jan 04 #Python
python 邮件检测工具mmpi的使用
Jan 04 #Python
Python3中的tuple函数知识点讲解
Jan 03 #Python
python中pivot()函数基础知识点
Jan 03 #Python
You might like
php使用json-schema模块实现json校验示例
2019/09/28 PHP
jQuery之网页换肤实现代码
2011/04/30 Javascript
Ajax中解析Json的两种方法对比分析
2015/06/25 Javascript
JQuery在循环中绑定事件的问题详解
2016/06/02 Javascript
Vue.js实现无限加载与分页功能开发
2016/11/03 Javascript
SelectPage v2.4 发布新增纯下拉列表和关闭分页功能
2017/09/07 Javascript
使用vue官方提供的模板vue-cli搭建一个helloWorld案例分析
2018/01/16 Javascript
Angular 4.x+Ionic3踩坑之Ionic 3.x界面传值详解
2018/03/13 Javascript
使用微信小程序开发弹出框应用实例详解
2018/10/18 Javascript
小程序文字跑马灯效果
2018/12/28 Javascript
javascript原型链学习记录之继承实现方式分析
2019/05/01 Javascript
layer弹出层扩展主题的方法
2019/09/11 Javascript
微信小程序3D轮播实现代码
2019/09/19 Javascript
JS实现压缩上传图片base64长度功能
2019/12/03 Javascript
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
2020/02/04 jQuery
vue插槽slot的简单理解与用法实例分析
2020/03/14 Javascript
antd多选下拉框一行展示的实现方式
2020/10/31 Javascript
jQuery是用来干什么的 jquery其实就是一个js框架
2021/02/04 jQuery
[01:35]辉夜杯战队访谈宣传片—LGD
2015/12/25 DOTA
python方法生成txt标签文件的实例代码
2018/05/10 Python
python获取命令行输入参数列表的实例代码
2018/06/23 Python
python中struct模块之字节型数据的处理方法
2019/08/27 Python
pytorch之Resize()函数具体使用详解
2020/02/27 Python
django 数据库 get_or_create函数返回值是tuple的问题
2020/05/15 Python
英国在线泳装店:Simply Swim
2019/05/05 全球购物
意大利在线药房:Saninforma
2021/02/11 全球购物
ShellScript面试题一则-ShellScript编程
2014/06/24 面试题
电子信息专业自荐书
2014/02/04 职场文书
中级会计职业生涯规划书
2014/03/01 职场文书
公司活动方案范文
2014/03/06 职场文书
科学发展观活动总结
2014/08/28 职场文书
群众路线个人自我剖析材料
2014/10/07 职场文书
学校党风廉政建设调研报告
2015/01/01 职场文书
神农溪导游词
2015/02/11 职场文书
python异步的ASGI与Fast Api实现
2021/07/16 Python
django项目、vue项目部署云服务器的详细过程
2022/07/23 Servers