我正在寻找一种基于其中一个值拼接两个列表的pythonic方法。单线将是首选。

说我们有

[0, 1, 1, 0, 0, 1, 1, 1, 0, 1]



['a', 'b', 'c', 'd', 'e', 'f']

结果必须如下所示:

[0, 'a', 'b', 0, 0, 'c', 'd', 'e', 0, 'f']

最佳答案

您可以将 nextiter 一起使用:

d = [0, 1, 1, 0, 0, 1, 1, 1, 0, 1]
d1 = ['a', 'b', 'c', 'd', 'e', 'f']
new_d = iter(d1)
result = [i if not i else next(new_d) for i in d]

输出:
[0, 'a', 'b', 0, 0, 'c', 'd', 'e', 0, 'f']

关于python - 拼接列表单行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57431598/

10-12 21:12