Python:通过附加现有列表中的信息来创建新元组

时间:2011-12-20 14:29:08

标签: python algorithm

我有2个名单:

l = [1,2,3,4,5,6,7]
f = [[3,'Red'],[2,'Blue']]

我希望基于l使用f,因此结果将类似于:

result = ((1,'Red'), (2,'Red'), (3,'Red'), (4,'Blue'), (5,'Blue'), (6,'None'), (7,'None'))

你能给我一些简单易行的代码吗? 谢谢你的帮助!

1 个答案:

答案 0 :(得分:9)

result = tuple(itertools.izip_longest(l, (x[1] for x in f for y in range(x[0])), fillvalue='None'))