Python中的列表去重函数示例
发布时间:2023-06-30 13:48:31
在Python中,有多种方法可以对列表进行去重操作。下面将为您介绍几种常见的方法和示例。
方法一:使用set()函数去重
可以使用set()函数将列表转换为集合,由于集合的特性是元素不重复且无序的,将列表转换为集合后再转换回列表即可实现去重操作。
def deduplicate_list(lst):
return list(set(lst))
示例:
lst = [1, 2, 3, 3, 4, 4, 5] dedup_lst = deduplicate_list(lst) print(dedup_lst) # 输出:[1, 2, 3, 4, 5]
方法二:使用列表推导式去重
使用列表推导式也可以实现对列表的去重操作。通过循环遍历列表,将不重复的元素添加到新的列表中。
def deduplicate_list(lst):
return [x for i, x in enumerate(lst) if x not in lst[:i]]
示例:
lst = [1, 2, 3, 3, 4, 4, 5] dedup_lst = deduplicate_list(lst) print(dedup_lst) # 输出:[1, 2, 3, 4, 5]
方法三:使用字典键 性去重
字典的键是 的,可以利用这个特性来去重。通过将列表中的元素作为字典的键,将其值设置为1,再将字典的键转换为列表即可。
def deduplicate_list(lst):
return list(dict.fromkeys(lst))
示例:
lst = [1, 2, 3, 3, 4, 4, 5] dedup_lst = deduplicate_list(lst) print(dedup_lst) # 输出:[1, 2, 3, 4, 5]
方法四:使用循环遍历去重
使用循环遍历的方法也可以实现对列表的去重操作。通过创建一个新的空列表,遍历原列表的元素,将不重复的元素添加到新列表中。
def deduplicate_list(lst):
dedup_lst = []
for i in lst:
if i not in dedup_lst:
dedup_lst.append(i)
return dedup_lst
示例:
lst = [1, 2, 3, 3, 4, 4, 5] dedup_lst = deduplicate_list(lst) print(dedup_lst) # 输出:[1, 2, 3, 4, 5]
以上就是几种常见的在Python中对列表进行去重的方法和示例。您可以根据自己的实际需求选择适合的方法进行使用。
