Вот код, который я пробовал:
booksa = [book[i] for book in books for k in range(len(lista)) for i in lista[k][0] ]
booksb = [book[j] for book in books for e in range(len(lista)) for j in lista[e][1] ]
Привет, я не настолько знаком с циклами в понимании списков.У меня есть список с именем 'books'
и список с именем 'lista'
.Я хочу найти второй элемент каждого кортежа в books
с lista
в качестве индекса и сохранить соответствующие пары в списках booksa
и booksb
.
books = [(17,5), (3,55), (5,12), (14,9), (16,1), (9,5), (5,6), (18,13), (19,7), (1,20), (4,12), (11,1), (8,6), (8,18), (3,4), (13,7), (17,22), (20,7)]
lista = [[(0,9), (3,10), (6,15)]]
Например, для (0,9)
в lista
мы оглядываемся на books
и находим 17
(0 означает первый кортеж) в (17,5)
, а затем помещаем 17
в booksa
и 7
(9 означает восьмой кортеж) в (9,5)
для вставки booksb
.
Как я могу сделать это в списке с некоторыми циклами for?