假设我有两个列表,l1并且l2.我想执行l1 - l2,返回所有l1不在的元素l2.
我可以想到一个简单的循环方法来做到这一点,但这将是非常低效的.什么是pythonic和有效的方法呢?
举个例子,如果我有l1 = [1,2,6,8] and l2 = [2,3,5,8],l1 - l2应该回来[1,6]
我想在 Python 中执行以下操作:
A = [1, 2, 3, 4, 5, 6, 7, 7, 7]
C = A - [3, 4] # Should be [1, 2, 5, 6, 7, 7, 7]
C = A - [4, 3] # Should not be removing anything, because sequence 4, 3 is not found
Run Code Online (Sandbox Code Playgroud)
所以,我只想从另一个列表中删除子列表(作为序列)的第一次出现。我怎样才能做到这一点?
编辑:我说的是列表,而不是集合。这意味着项目是排序(序列)物质(既在A和B),以及重复。