我如何遍历列表并替换重复的对象?

时间:2017-03-14 22:49:17

标签: python-3.x loops

我正在尝试浏览列表,并将该列表中的每个对象与其他对象进行比较,并将其所有重复替换为其他内容。

>>> t = [1, 2, 1, 1, 2, 2, 4, 4]
>>> for i in range(len(t)):
num = t[i]
if num in t[i+1:]:
    num = 'cherry'

这并没有将重复的内容转化为“樱桃”。我知道我正确引用它们,因为我将print(num)放在num = cherry的位置,它正在打印我想要的东西。但是,它不会重新分配它们。我做错了什么?

1 个答案:

答案 0 :(得分:0)

您应该将列表设置为集合,因为集合是唯一元素的无序集合,非常适合从序列中删除重复项 要创建一个集合,可以像下面的代码一样使用set()函数,或者像输出那样使用花括号{}

t = [1, 2, 1, 1, 2, 2, 4, 4]
x = set(t)
print(x)
#Output
{1, 2, 4}