Как создать подсписок из 2 списков, выбрав их элементы по индексу - PullRequest
0 голосов
/ 04 февраля 2020

У меня есть 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)]

Ответы [ 2 ]

1 голос
/ 04 февраля 2020

Просто используйте метод zip и примените к нему понимание списка *1003*.

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

Используйте конструктор list, потому что метод zip возвращает кортежи .

0 голосов
/ 04 февраля 2020

Попробуйте

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]]
...