Python 列出一个列表中的所有重复元素
我们可以通过使用 Python 的 collections.Counter
来统计列表中每个元素的出现次数,然后筛选出出现次数大于 1 的元素,这些就是列表中的重复元素。
实例
from collections import Counter
def find_duplicates(lst):
# 使用 Counter 统计每个元素的出现次数
count = Counter(lst)
# 筛选出出现次数大于 1 的元素
duplicates = [item for item, cnt in count.items() if cnt > 1]
return duplicates
# 示例列表
my_list = [1, 2, 3, 4, 2, 5, 6, 3, 7, 8, 8]
# 调用函数找出重复元素
result = find_duplicates(my_list)
print(result)
def find_duplicates(lst):
# 使用 Counter 统计每个元素的出现次数
count = Counter(lst)
# 筛选出出现次数大于 1 的元素
duplicates = [item for item, cnt in count.items() if cnt > 1]
return duplicates
# 示例列表
my_list = [1, 2, 3, 4, 2, 5, 6, 3, 7, 8, 8]
# 调用函数找出重复元素
result = find_duplicates(my_list)
print(result)
代码解析:
from collections import Counter
:导入Counter
类,用于统计列表中每个元素的出现次数。count = Counter(lst)
:使用Counter
统计列表lst
中每个元素的出现次数,结果是一个字典,键是元素,值是该元素的出现次数。duplicates = [item for item, cnt in count.items() if cnt > 1]
:通过列表推导式筛选出出现次数大于 1 的元素,这些就是重复元素。return duplicates
:返回包含所有重复元素的列表。my_list = [1, 2, 3, 4, 2, 5, 6, 3, 7, 8, 8]
:定义一个示例列表。result = find_duplicates(my_list)
:调用find_duplicates
函数,找出列表中的重复元素。print(result)
:输出结果。
输出结果:
实例
[2, 3, 8]
点我分享笔记