python中,我们经常用到列表,而列表的操作之中,往往会出现要求删除列表中的重复项,最近读书,看了一个非常简单的集合解决方法,在这里就展示出来,非常值得大家学习哦。
(1)
# -----------code--------------
list1=[1,2,3,3,3,5,4,6,6,6,7,7,8,0,2] res=[] [res.append(x) for x in list1 if x not in res] print(res) list1=res print(list1)
#----------------------------
print结果:[1, 2, 3, 5, 4, 6, 7, 8, 0]
后面三句是可要可不要的,print(res)主要是查看res有没有实现我们的要求,list1=res,就是原来的列表删除了重复项
这一种方法,出来的res是按原来的顺序输出,只是把重复项删除了,如果需要排序,可用sort。
(2)
这里还有一个set的方法,出来就是(数值型)从小到大的排序了。
# ---------------------------------- def RemoveDuplicate(list_value): return list(set(list_value)) #set方法 print(RemoveDuplicate(list1))
# -----------------------------
print的结果:[0, 1, 2, 3, 4, 5, 6, 7, 8]
注意看 0 的位置哦。
(3)
这里还给大家列出经典的遍历方法,就是(1)的思路。
# -------------- res=[] for i in list1: if i not in res: res.append(i) print(res)