问题是在保持订单的同时合并两个列表,并且在合并列表中具有相同数量的项目,这些项目不能容纳超过10个(或任何数量)项目,但是尽可能多。
这是最简单的例子。
l1 = list('1'*10)
l2 = list('2'*10)
lt = l1[:5] + l2[:5]
但是,当一个列表没有5个项目时,新列表将填充其他列表中的项目。
l1 = list('1'*2)
l2 = list('2'*10)
lt = ['1','1','2','2','2','2','2','2','2','2']
l1 = list('1'*10)
l2 = list('2'*2)
lt = ['1','1','1','1','1','1','1','1','2','2']
该功能应该包含任意数量的项目列表。这应该很简单但不是。
答案 0 :(得分:5)
你想要获得更大的东西:列表中的五个项目或足够的项目来填充列表到所需的长度。
lt = l1[:max(5, 10 - len(l2))] + l2[:max(5, 10 - len(l1))]