首页 > 解决方案 > 如何在 Python 中从列表中查找缺失的数字?

问题描述

lst = [1, 4, 5, 9, 6]

如何编写代码来获取一些必须返回的缺失值[2, 3, 7, 8]

这是我的代码

new_list = []
for i in range(1, len(lst1)):
  if i not in lst1:
    new_list.append(i)
print(new_list)

标签: python-3.x

解决方案


您可以将它们转换为集合并使用“-”来计算差异。请注意,顺序很重要。

如果要查找缺失的元素,您需要定义要与列表进行比较的内容。如果它很简单,例如“从 1 到 10 的数字”,您可以使用以下代码自动执行此操作:

list(range(1, 10))

比较代码是:

lst1 = [1, 4, 5, 9, 6]
lst2 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
out = list(set(lst2) - set(lst1))
print(out)

返回

[8, 2, 3, 7]

目前尚不清楚您想要从您的问题中得到什么,如果您提供更多详细信息,它将更容易提供帮助。


推荐阅读