将两个或多个列表合并到一个列表列表中,根据每个输入列表的位置组合每个输入列表中的元素。
- 与列表推导结合使用
max()
以获取参数中最长列表的长度。 range()
与变量结合使用,max_length
循环次数与最长列表中的元素一样多。- 如果列表短于
max_length
,则fill_value
用于剩余项
def merge(*args, fill_value = None):
max_length = max([len(lst) for lst in args])
result = []
for i in range(max_length):
result.append([
args[k][i] if i < len(args[k]) else fill_value for k in range(len(args))
])
return result