【发布时间】:2017-03-13 05:32:18
【问题描述】:
有两个类似
的列表[[A, A], [B, B], [C, C], [D, D]]
和
[[A, A], [B, B]]
如何从 1 中删除结果为 [[C, C], [D, D]] 的列表 2 并使其没有循环,因为两个列表都非常大并且循环运行缓慢?
谢谢 列举例子
>>>a = [[9, 9], [8, 8], [7, 7], [6, 6], [4, 4], [5, 5], [12, 12], [15, 15], [2, 2], [3, 3]]
>>>b = [[4, 4], [5, 5]]
表单要求写我已经尝试过的,好的,它在下面 尝试一:(不行,而且里面有循环)
def rightdotsremowe (ax, bx):
for o in set(bx):
try:
ax.remove(o)
except ValueError:
pass
return ax
尝试两次(看起来更好但也不起作用)
newlist00 = [x for x in a if (x not in e)]
【问题讨论】:
-
如果它们是一组元组,你可以减去它们,但我不知道如何在没有循环的情况下使用 2D 列表(意思是,小于 O(n))。跨度>