Python目录去重方法详解
本文将介绍至少5种Python目录去重方法,对于学习和工作都有很强的参考意义。

方法一:利用集合去重
将列表转换成集合,因为集合的元素是唯一的,然后再将集合转换成列表。
list_1=[10,1,2,20,10,3,2,1,15,20,44,56,3,2,1]
def func1(list_1):
return list(set(list_1))
print('去重后的列表:',func1(list_1))
方法二:利用for循环
遍历列表,将不在已有列表中的元素添加到新的列表中。
list_2=[10,1,2,20,10,3,2,1,15,20,44,56,3,2,1]
def func2(list_2):
mylist_2=[]
for i in list_2:
if i not in mylist_2:
mylist_2.append(i)
return mylist_2
print(func2(list_2))
方法三:巧用sort()排序
将列表排序,再通过for循环和while循环,将不重复的元素添加到新的列表中。
list_3=[10,1,2,20,10,3,2,1,15,20,44,56,3,2,1]
def func3(list_3):
result_list=[]
temp_list=sorted(list_3)
i=0
while i<len(temp_list):
if temp_list[i] not in result_list:
result_list.append(temp_list[i])
else:
i+=1
return result_list
print(func3(list_3))
方法四:巧用字典
将列表转换成字典的键,因为键值是唯一的,再将字典的键转换成列表。
list_4=[10,1,2,20,10,3,2,1,15,20,44,56,3,2,1]
def func4(list_4):
result_list=[]
for i in {}.fromkeys(list_4).keys():
result_list.append(i)
return result_list
print(func4(list_4))
方法五:利用迭代器
将列表排序,再利用迭代器对相邻的元素进行分组,取每组的第一个元素添加到新的列表中。
import itertools
list_5=[10,1,2,20,10,3,2,1,15,20,44,56,3,2,1]
def func5(list_5):
list_5.sort()
temp_list=itertools.groupby(list_5)
result_list=[]
for i,j in temp_list:
result_list.append(i)
return result_list
print(func5(list_5))
以上就是Python目录去重的方法,希望可以给大家带来帮助。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/6857.html
