以奇数顺序组合两个列表

时间:2016-04-19 14:01:51

标签: python

我正在编写一个脚本,当你输入商务名称时,它会获取该地点的电话号码和地址。

不幸的是,电话号码和地址位于不同的列表中,我需要弄清楚如何将这些列表与“Go here,skip one,go here”等组合起来。

实施例

i = ['a', 'b', 'c']
l = ['1', '2', '3']

我怎么能把这些结合起来呢?

['1', 'a', '2', 'b', '3', 'c']

2 个答案:

答案 0 :(得分:0)

您可以使用zip

i = ['a', 'b', 'c']
l = ['1', '2', '3']

for j,k in zip(l,i):
    result.extend((j,k))

输出:

>>> result
['1', 'a', '2', 'b', '3', 'c']

答案 1 :(得分:0)

您可以遍历两个列表,并按照所需顺序将每个元素插入新列表中。

 a=len(i)-1  #len-1 because i used range which goes until n-1
    b=len(l)-1
    mx=max(a,b)
    new_list=[]  #new list to store the ordered elements
    for n in range(mx): #loop until it reaches the last value of the larger list
        if n<=a:
            new_list.append(l[n])
        elif n<=b:
            new_list.append(i[n])

    print new_list