编写一个名为interleave的函数,它接受三个列表作为参数,并返回一个列表,该列表是所有三个列表的组合。请注意,应按以下示例中的顺序排序复合列表: 如果这三个清单是
x = ['a', 'b']
y = [1, 2]
z = ['orange', 'apple']
那么复合列表应该是
['a', 1, 'orange', 'b', 2, 'apple'].
您可以假设所有输入列表的长度都相同。
我可以添加列表;但是,我无法将复合列表排序为赋值的方式。以下是我到目前为止:
x = [ 'a', 'b']
y = [1, 2]
z = [ 'orange', 'apple']
composite = []
for element in x, y, z:
composite.append(element)
print composite
答案 0 :(得分:1)
您可以使用list_comprehension。
>>> x = ['a', 'b']
>>> y = [1, 2]
>>> z = ['orange', 'apple']
>>> [j for i in zip(x,y,z) for j in i]
['a', 1, 'orange', 'b', 2, 'apple']
将其作为一种功能。
def fun(x,y,z):
return [j for i in zip(x,y,z) for j in i]
x = ['a', 'b']
y = [1, 2]
z = ['orange', 'apple']
print fun(x,y,z)