给定多个列表,如下所示:
a = [1, 2, 3]
b = [5, 6, 7, 8]
c = [9, 0, 1]
d = [2, 3, 4, 5, 6, 7]
...
在开始从第二个列表中获取元素之前,我希望能够将它们组合起来以从第一个列表中获取尽可能多的元素,因此结果将是:
result = [1, 2, 3, 8, 6, 7]
有没有特别好的写法?如果没有 for 循环,我想不出一个非常简单的方法。也许是一个带有聪明的 zip 的列表理解。
请您参考如下方法:
简单的切片和连接:
a + b[len(a):]
或者有更多列表:
res = []
for lst in (a, b, c, d):
res += lst[len(res):]
# [1, 2, 3, 8, 6, 7]
