Python程序打印整数列表中的重复元素?


本文将展示如何从整数列表中找出重复元素。列表可以写成方括号之间用逗号分隔的值(项目)的列表。列表的一个重要特点是,列表中的项目不必是相同类型。

假设我们有以下输入列表:

[5, 10, 15, 10, 20, 25, 30, 20, 40]

输出显示重复元素:

[10, 20]

使用for循环打印整数列表中的重复元素

我们将使用for循环来显示整数列表的重复元素。我们将循环遍历并比较列表的每个元素以查找匹配项。之后,如果找到匹配项,则意味着它是重复项,并显示相同的元素。

示例

# Create a List myList = [5, 10, 15, 18, 20, 25, 30, 30, 40, 50, 50, 50] dupItems = [] uniqItems = {} # Display the List print("List = ",myList) for x in myList: if x not in uniqItems: uniqItems[x] = 1 else: if uniqItems[x] == 1: dupItems.append(x) uniqItems[x] += 1 print("Duplicate Elements = ",dupItems)

输出

List =  [5, 10, 15, 18, 20, 25, 30, 30, 40, 50, 50, 50]
Duplicate Elements =  [30, 50]

使用Counter打印整数列表中的重复元素

我们将使用Counter来显示整数列表中的重复元素。Counter来自Collections模块。此模块实现专门的容器数据类型,提供Python通用内置容器dict、list、set和tuple的替代方案。

示例

from collections import Counter # Create a List myList = [5, 10, 15, 10, 20, 25, 30, 20, 40] # Display the List print("List = ",myList) # Get the Count of each elements in the list d = Counter(myList) # Display the Duplicate elements res = list([item for item in d if d[item]>1]) print("Duplicate Elements = ",res)

输出

List =  [5, 10, 15, 10, 20, 25, 30, 20, 40]
Duplicate Elements =  [10, 20]

使用集合列表推导式打印整数列表中的重复元素

列表推导式的语法如下:

[expression for item in list]

现在让我们看一个例子:

示例

# Create a List myList = [5, 10, 15, 10, 20, 25, 30, 20, 40] # Display the List print("List = ",myList) # Display the duplicate elements print(list(set([a for a in myList if myList.count(a) > 1])))

输出

List =  [5, 10, 15, 10, 20, 25, 30, 20, 40]
[10, 20]

更新于:2022年8月11日

2K+ 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告