首页 > 解决方案 > 如何删除列表中多次出现的所有元素?

问题描述

虽然关于这个问题有几个类似的问题,但他们根本无法帮助我,所以我现在问你:

假设我有一个这样的列表:

list = [3, 8, 4, 8, 3, 9, 8]

检查后,我想要这样的输出:

list = [4, 9]

我尝试了以下方法,但上面列表的输出是两个列表,每个数字都包含一次(我猜类似于一组),并且在一段时间后最终出现列表索引超出范围错误:

def listchecker(list):
    for i in range(0, len(list)):
        for j in range(i + 1, len(list)):
            if list[i] == list[j]:
                del list[i]
                listchecker(list)
    print("Updated list:", list)

我完全理解这不是正确的方法 - 我可能宁愿需要一些东西来保护不止一次出现的元素的索引并通过再次迭代列表来删除它的值......但我不知道如何继续在那。

提前致谢!

标签: python-3.xlistrecursionindexoutofrangeexception

解决方案


推荐阅读