python删除list中重复元素的两种方法
方法一:使用遍历的方法进行删除
- 注:需要注意的是遍历要在列表尾部进行删除,如果在列表开始进行删除,列表的元素id会进行更新,所以会出现问题
lsts = [1,4,2,9,4,6,9,8,4,3]
lsts.sort() # 将列表进行排序
t = lsts[-1] # 要在后面开始进行删除操作
print(len(lsts))
for i in range(len(lsts)-2,-1,-1):
if t == lsts[i]:
# 也可以使用 del lsts[i] 进行删除元素
lsts.remove(lsts[i])
else:
t = lsts[i]
# 显示结果
print(lsts)
方法二:首先用set()函数将列表转化为集合,在集合中不可以出现重复的元素,会自动进行删除操作,然后再用list()函数转化为列表即可。
- 注:这种方法比较简单,但是列表的元素顺序可能会发生变化。
# 可以直接将列表转换为集合,然后再转化为列表
lst = [1,4,2,9,4,6,9,8,4,3]
lst = list(set(lst))
print(lst)