附加到二维列表

时间:2018-11-01 18:07:14

标签: python python-3.x list

我有2个列表:

a = [222, 244, 231, 220, 200, 201, 202]
b = [[231, 220, 222, 244], [200, 201]]

我想将不在b中的a的所有值附加为2d列表b中的1个项目列表。因此,由于202不在b中,结果应如下所示:

new_b = [[231, 220, 222, 244], [200, 201], [202]]

似乎是一个简单的问题,但是我在制定for循环以使其正常工作方面遇到困难。任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:4)

这是使用setitertools.chain的一种方法:

from itertools import chain

b_set = set(chain.from_iterable(b))
res = b + [[i] for i in a if i not in b_set]

print(res)

[[231, 220, 222, 244], [200, 201], [202]]