Python删除list中多个相同元素

pop和remove方法都可以删除list中的元素,个人更倾向于使用remove方法,因为在删除过程中不会打印信息,安静的把任务完成。

pop方法:删除过程中会打印信息

>>> alist = [‘d‘, ‘d‘, ‘d‘, ‘d‘, 7, 4, 2, 1]
>>> for i in range(len(alist)-1,-1,-1): #倒序循环
      if alist[i] == ‘d‘:
          alist.pop(i) #将index处的元素删除并return该元素

‘d‘
‘d‘
‘d‘
‘d‘
>>> alist
[7, 4, 2, 1]

remove方法:删除过程不会打印信息

>>> alist = [‘d‘, ‘d‘, ‘d‘, ‘d‘, 7, 4, 2, 1]
>>> for i in range(len(alist)-1,-1,-1):
      if alist[i] == ‘d‘:
          alist.remove(‘d‘) #删除首次出现的值为‘d‘的元素,如果元素不存在会报ValueError

>>> alist
[7, 4, 2, 1]
>>>
>>> 

*以上测试碰巧四个元素连在一起,如果不是连在一起依然有效。

原文地址:https://www.cnblogs.com/huahuayu/p/8179775.html

时间: 2024-10-13 12:11:45

Python删除list中多个相同元素的相关文章

python 删除list中重复元素

list = [1,1,3,4,6,3,7] 1. for s in list: if list.count(s) >1: list.remove(s) 2. list2=[] for s in list: if s not in list2: list2.append(s) print list2 3. list2=[] for s in list: list2.append(s) print list2 python 删除list中重复元素

python——删除列表中的元素

在python中,删除列表元素的方法有三种,分别为remove(),del(),pop()函数 (1)remove() >>> name = ['小明','小华','小红','小李','小霞','小文'] >>> name.remove('小红') >>> name ['小明', '小华', '小李', '小霞', '小文'] remove()函数里面的参数必须是列表中已有的元素值. (2)del() >>> name = ['小明'

js如何删除数组中的第一个元素

js如何删除数组中的第一个元素:下面介绍一下如何利用javascript删除数组中的第一个元素,代码如下: var arr=["蚂蚁部落","青岛市南区",2,"antzone"]; console.log(arr); arr.shift(); console.log(arr); 以上代码可以删除数组中的第一个元素,具体可以参阅javascript的Array对象的shift()方法一章节. 原文地址是:http://www.softwhy.co

删除数组中指定的某个元素

/** * 删除数组中指定的某个元素 */ function removeByValue(arr, val) {   for(var i=0; i<arr.length; i++) {     if(arr[i] == val) {       arr.splice(i, 1);       break;     }   } } var somearray = ["mon", "tue", "wed", "thur"]

一次性删除数组中的多个元素

1.删除数组中的多个元素,也就是去掉数组中不符合条件的选项 分析:用for或者forEach遍历数组的话在方法体内部 splice后数组长度发生了变化,最后得不到正确的结果. filter() 方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素. 2.解决方法:使用逆向循环 或者 Array.prototype.filter()方法 下面以angular项目中的删除已完成选项为例: 数据: // 任务列表,true表示已完成 $scope.todoList = [ {id: 1, n

javascript shift()删除数组中的第一个元素

javascript shift()可以把数组中的第一个元素从其中删除,并返回第一个元素的值.(如果数组是空的,那么shift()方法将不进行任何操作,并返回undefined值.) <!DOCTYPE html> <html> <head> <title>Runde</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-

python删除列表中得重复得数据

解决思想:将列表转换为 集合,利用集合删除重复数据得特性删除重复数据,然后将集合转换为列表 #删除列表中得重复元素 def delect_1 (lt): s = set(lt) lt = list(s) print(lt)delect_1([1,2,3,4,1,3,4,5]) 原文地址:https://www.cnblogs.com/chaojiyingxiong/p/9174791.html

python删除数组中元素

有数组a,要求去掉a所有为0的元素 a = [2,4,0,8,9,10,100,0,9,7] Filter a= filter(None, a) Lambada a = filter(lambda x: x != 0, a) for for b in a: if b == 0: a.remove(b)

循环删除list中的某一元素的四种方式

方式一: /** * 直接使用foreach方法移除list中的元素会抛异常 * Exception in thread "main" java.util.ConcurrentModificationException * 这种方式的问题在于,删除某个元素后,list的大小发生了变化,而你的索引也在变化, * 所以会导致你在遍历的时候漏掉某些元素. * 比如当你删除第1个元素后,继续根据索引访问第2个元素时,因为删除的关系后面的元素都往前移动了一位, * 所以实际访问的是第3个元素.