如何通过从2个列表中明智地选择其项目来创建子列表

问题描述 投票:0回答:2

我有一个list1=[1,2,3,3,4]和另一个list2=[2,4,5,6,7]。我想产生list3=[[1,2],[2,4],[3,5],[3,6],[4,7]]

n=int(input())
ls=[]
ls1=[]
ls2=[]
ls3=[]
ls=list(map(int,input().split()))
ls1=list(map(int,input().split()))
for i in ls:
    for j in ls1:
        if i==j
            a=ls.index(i)
            b=ls1.index(j)
            ls2.apppend(a)
            ls3.append(b)
ls4=[i,j for i,j in zip(ls2,ls3)]
python list concatenation add
2个回答
1
投票

只需使用zip方法并在其上应用列表理解

pairs = [list(pair) for pair in zip(a,b)]

使用list构造函数,因为zip方法返回元组


0
投票

尝试

list3 = []
for i in range(len(list1)):
    list3.append([list1[i], list2[i]])

或者,上面的代码列出完整版本为>]

list4 = [[list1[i], list2[i]] for i in range(len(list1))]

两者都会输出

[[1, 2], [2, 4], [3, 5], [3, 6], [4, 7]]
© www.soinside.com 2019 - 2024. All rights reserved.