Python,如何将列表B从列表A中移除以生成列表C?

5 投票
4 回答
8476 浏览
提问于 2025-04-17 17:46

我想知道怎么把一个列表从另一个列表中去掉,得到一个新的列表。也就是说,从列表a中减去列表b,得到一个新的列表c。

a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9,]

b = [3, 4, 5, 6]

c = []?

4 个回答

5

或者使用列表推导式:

c = [x for x in a if x not in b]
7

为了保持顺序并利用集合的特性提高速度:

bs = set(b)
c = [x for x in a if x not in bs]
12

把这些列表转换成一个集合,然后计算这个集合的差集。

c = list(set(a).difference(set(b))

撰写回答