假设我有两个列表,l1和l2。我要执行l1 - l2,返回l1not中的所有元素l2。
我可以想到一个幼稚的循环方法来执行此操作,但这实际上效率很低。什么是Python高效的方法?
例如,如果我有l1 = [1,2,6,8] and l2 = [2,3,5,8],l1 - l2应返回[1,6]
l1 = [1,2,6,8] and l2 = [2,3,5,8]
l1 - l2
[1,6]
Python具有称为List Comprehensions的语言功能,非常适合使这种事情变得非常容易。以下语句完全满足你的要求,并将结果存储在l3:
l3 = [x for x in l1 if x not in l2]
l3将包含[1, 6]。
[1, 6]