在 Python 中找出列表中缺失的元素
如果我们有一个包含数字的列表,我们可以检查这些数字是否连续,还可以找出哪些数字在某范围内缺失,而最高数是最终值。
使用 range 和 max
我们可以设计一个 for 循环来使用 not in 运算符检查某个范围内缺失的值。然后通过将这些值添加到新列表中,记录所有这些值,该新列表成为结果集。
示例
listA = [1,5,6, 7,11,14]
# Original list
print("Given list : ",listA)
# using range and max
res = [ele for ele in range(max(listA) + 1) if ele not in listA]
# Result
print("Missing elements from the list : \n" ,res)输出
运行以上代码会产生以下结果 −
Given list : [1, 5, 6, 7, 11, 14] Missing elements from the list : [0, 2, 3, 4, 8, 9, 10, 12, 13]
使用 set
我们使用 set 函数来保存给定范围内的所有唯一值,然后减去给定列表。因此,这会产生包含连续数字中缺失值的结果集。
示例
listA = [1,5,6, 7,11,14]
# printing original list
print("Given list : ",listA)
# using set
res = list(set(range(max(listA) + 1)) - set(listA))
# Result
print("Missing elements from the list : \n" ,res)输出
运行以上代码会产生以下结果 −
Given list : [1, 5, 6, 7, 11, 14] Missing elements from the list : [0, 2, 3, 4, 8, 9, 10, 12, 13]
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP