使用Python中的列表

时间:2016-05-22 20:47:02

标签: python list duplicates

我有两个非唯一的值列表,例如

["a", "b", "a", "c"] 

 ["a", "b", "b", "f"]

我想找到第一个列表中哪些元素没有出现在第一个列表中。

我可以手动编写代码,但更喜欢使用内置函数。我无法弄清楚是怎么回事,因为我一直碰到可以/不可用的屏障。

2 个答案:

答案 0 :(得分:8)

在这种情况下,它将是

set(second_list) - set(first_list)

因为字符串是可以清除的,所以你可以把它们放在一起。如果您有不可排除的值,那么告诉我们它们是什么,我们可能会想出一个解决方法。例如:

  • 您可以使用tuple(the_list)将列表转换为元组,可以使用list(the_tuple)返回。
  • 您可以使用tuple(the_set)将集转换为元组,可以使用set(the_tuple)返回。
  • 您可以使用tuple(map(tuple, the_list))将嵌套列表转换为嵌套元组,然后使用list(map(list, the_tuple))返回。
  • 您可以使用tuple(the_dict.items())将字典转换为嵌套元组,然后使用dict(the_tuple)返回。

答案 1 :(得分:1)

[如果x不在ListB中,则x为ListB中的x]

我认为这是一种非常快捷的方法。