iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python怎么删除列表中重复元素
  • 870
分享到

Python怎么删除列表中重复元素

Python 2023-05-14 21:05:42 870人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

直接遍历列表删除l1 = [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2] for el in l1: if l1.count(el) > 1:

直接遍历列表删除

l1 = [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]

for el in l1:
    if l1.count(el) > 1:
        l1.remove(el)
print(l1)# 会漏删,因为删除一个元素后,后面的元素向前补位,导致紧跟的一个元素被跳过.

通过遍历索引删除

l1 = [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]
for el in range(len(l1)):  # 此时len(l1)已经确定,不会随着l1后面的变化而变化
    if l1.count(l1[el]) > 1:
        l1.remove(l1[el])
print(l1)  # 会报错,因为删除元素后导致l1的长度变短了,但是for遍历的还是之前的索引长度,会导致索引超过范围而报错

通过遍历创建的切片来删除原列表

l1 = [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]
for el in l1[:]:
    if l1.count(el) > 1:
        l1.remove(el) # 没有问题,可以去重,但是无法保留原有的顺序
print(l1)

用新列表记录需要保留的元素

l1 = [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]
lst = []
for el in l1:
    if lst.count(el) < 1:
        lst.append(el)
print(lst)   # 没有问题,也能保留原有顺序,但是创建了新列表

通过索引倒着删除

l1 = [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]
for el in range(len(l1)-1, -1, -1):
    if l1.count(l1[el]) > 1:
        l1.pop(el)  # 没有问题,且保留原顺序
        # l1.remove(l1[el]) # 没有问题,但是不能保留原有顺序
        # del l1[el] # 这样则会保留原有顺序,小伙伴可以想一想为什么
print(l1)

通过递归函数删除

l1 = [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]
def set_lst(lst):
    for el in lst:
        if lst.count(el) > 1:
            lst.remove(el)
            set_lst(lst)    # 每次开辟一个新函数,判断上次被删除了一个元素后的列表
    else:  # 直到最后,列表里的元素都是一个,运行了else
        return lst
print(set_lst(l1))  # 因为是从前面开始删除的,所以不保留原有顺序
'''
[1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]
[1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]
[1, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]
[1, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]
[1, 3, 3, 3, 6, 6, 5, 5, 2, 2]
[1, 3, 3, 6, 6, 5, 5, 2, 2]
[1, 3, 6, 6, 5, 5, 2, 2]
[1, 3, 6, 5, 5, 2, 2]
[1, 3, 6, 5, 2, 2]
[1, 3, 6, 5, 2]   return lst = [1, 3, 6, 5, 2]
'''

毫无疑问set()是最方便的

l1 = [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2]
lst = list(set(l1))
print(lst)

以上就是python怎么删除列表中重复元素的详细内容,更多请关注编程网其它相关文章!

--结束END--

本文标题: Python怎么删除列表中重复元素

本文链接: https://www.lsjlt.com/news/206407.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python怎么删除列表中重复元素
    直接遍历列表删除l1 = [1, 1, 2, 2, 3, 3, 3, 3, 6, 6, 5, 5, 2, 2] for el in l1: if l1.count(el) > 1: ...
    99+
    2023-05-14
    Python
  • python怎么删除列表重复元素
    要删除列表中的重复元素,可以使用set()函数和list()函数的组合来实现。例如,假设有一个列表nums,其中包含了重复的元素:n...
    99+
    2023-10-24
    python
  • Python如何删除列表中重复元素
    这篇“Python如何删除列表中重复元素”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python如何删除列表中重复元素”文...
    99+
    2023-07-06
  • 使用Python怎么删除列表重复元素
    本篇文章为大家展示了使用Python怎么删除列表重复元素,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。python有哪些常用库python常用的库:1.requesuts;2.scrapy;3.pi...
    99+
    2023-06-14
  • python列表重复元素如何删除
    要删除列表中的重复元素,可以使用以下两种方法:1. 使用集合(set):将列表转换为集合,由于集合中的元素是唯一的,所以会自动删除重...
    99+
    2023-09-15
    python
  • python如何删除列表中的重复元素
    这篇文章给大家分享的是有关python如何删除列表中的重复元素的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。删除列表中的重复元素发生多次的元素称为重复元素。 我们可以使用类型转换简单地删除重复的元素。my_lis...
    99+
    2023-06-27
  • python怎么去除列表中的重复元素
    可以使用set()函数将列表转换为集合,再将集合转换为列表,即可去除列表中的重复元素。具体代码如下:```python# 原始列表l...
    99+
    2023-09-23
    python
  • python怎么删除列表中的元素
    有几种方法可以删除列表中的元素:1. 使用`del`关键字```pythonmy_list = [1, 2, 3, 4, 5]del...
    99+
    2023-09-26
    python
  • python删除列表重复元素的方法是什么
    可以通过以下两种方法删除列表中的重复元素:1. 使用set()函数:将列表转换为集合,集合中的元素不会重复,然后再将集合转换回列表。示例代码如下:```pythonmy_list = [1, 2, 3, 3, 4, 5, 5, 6]ne...
    99+
    2023-08-11
    python
  • Python删除列表中重复元素的方法有哪些
    这篇文章主要介绍了Python删除列表中重复元素的方法有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python删除列表中重复元素的方法有哪些文章都会有所收获,下面我们一起来看看吧。直接遍历列表删除l1&...
    99+
    2023-07-05
  • python怎么删除列表中特定元素
    这篇文章主要介绍“python怎么删除列表中特定元素”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“python怎么删除列表中特定元素”文章能帮助大家解决问题。题目如下:给定一个仅包含大小写字母和空格...
    99+
    2023-06-30
  • 使用python怎么删除列表元素
    使用python删除列表元素的方法:1.使用pop()方法删除;2.使用del语句删除;3.使用remove()方法根据值删除;具体方法如下:使用pop()方法删除python中pop()方法是用于移除列表中的一个元素(默认最后一个元素),...
    99+
    2024-04-02
  • Python删除列表中重复元素的七种方法举例
    目录前言直接遍历列表删除通过遍历索引删除通过遍历创建的切片来删除原列表用新列表记录需要保留的元素通过索引倒着删除通过递归函数删除毫无疑问set()是最方便的总结前言 嗨嗨,大家晚上好...
    99+
    2023-05-14
    列表去重 python python怎么去除列表中重复项 python中删除列表中的重复内容
  • python如何去除列表重复元素
    可以使用set()函数来去除列表中的重复元素,然后再将其转换为列表。例如,假设有一个列表a = [1, 2, 3, 3, 4, 4,...
    99+
    2023-09-20
    python
  • 使用python怎么删除列表中的元素
    这篇文章将为大家详细讲解有关使用python怎么删除列表中的元素,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。python主要应用领域有哪些1、云计算,典型应用OpenStack。2、WEB...
    99+
    2023-06-14
  • python怎么删除列表中指定的元素
    你可以使用 remove() 方法来删除列表中的指定元素。例如: # 创建一个列表 mylist = [1, 2, 3, 4, 5]...
    99+
    2023-10-24
    python
  • python怎么删除列表中的指定元素
    有几种方法可以删除列表中的指定元素:1. 使用`remove()`方法:可以通过`remove()`方法删除列表中的指定元素。该方法将从列表中删除第一个匹配的元素。如果列表中不存在指定的元素,则会引发`ValueError`异常。```...
    99+
    2023-08-09
    python
  • python如何移除列表中的重复元素
    这篇文章主要介绍了python如何移除列表中的重复元素,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。移除列表中的重复元素感谢你能够认真阅读完...
    99+
    2024-04-02
  • python如何去除列表中的重复元素
    可以使用set()函数来去除列表中的重复元素。set()函数能够将列表转换为集合,并且集合中不允许有重复元素,然后再将集合转换为列表。具体代码如下:```pythonoriginal_list = [1, 2, 3, 2, 4, 3, ...
    99+
    2023-08-11
    python
  • python 列表删除多个元素
    文章目录 一. 删除列表多个元素方法1 使用枚举:2. 使用python中List.pop()方法3. 使用python中List.remove()方法4. 注意 二. 使用双指针法删...
    99+
    2023-08-31
    python 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作