Как я могу получить элементы из нескольких списков в определенном порядке? - PullRequest
0 голосов
/ 08 января 2020

Это немного смущает меня, потому что мне кажется, что мне нужно получить элемент из одного списка, элемент из другого списка и т. Д. c. а затем go вернитесь к первому списку и получите еще один элемент и т. д. c. У меня проблемы с выяснением того, как повторно посещать одни и те же списки несколько раз.

Вот список:

table_data = [['apples', 'oranges', 'cherries', 'banana'],
              ['Alice', 'Bob', 'Carol', 'David'],
              ['dogs', 'cats', 'moose', 'goose']]

Мне нужно распечатать эти данные в следующем формате:

apples    Alice    dogs
oranges     Bob    cats
cherries  Carol   moose
banana    David   goose

Спасибо!

1 Ответ

3 голосов
/ 08 января 2020

zip создаст итератор, который группирует элементы по их позиции (индексу) в переданных итераторах. В вашем случае передача *table_data "расширит" данные таблицы в 3 списка, которые затем можно будет передать в zip

for fruit, person, animal in zip(*table_data):
    print(fruit, person, animal)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...