Ітерація списку списків є звичайним завданням у Python, особливо при роботі з наборами даних або матрицями. У цій статті ми досліджуватимемо різні методи та прийоми для ефективної ітерації вкладених списків, охоплюючи як базові, так і розширені концепції Python. У цій статті ми побачимо, як ми можемо перебирати список списків у Python.
Перебір вкладеного списку в Python
Нижче наведено деякі способи, за допомогою яких ми можемо перебирати список списків у Python :
Ітерація по списку списків
У цьому прикладі створюється список під назвою `list_of_lists`, який містить вкладені списки. Використовуючи вкладені цикли for, кожен елемент у внутрішніх списках повторюється, а оператор `print` відображає елементи горизонтально в кожному підсписку, з кожним підсписком у новому рядку.
Python3
list_of_lists>=> [[>1>,>2>,>3>], [>4>,>5>,>6>], [>7>,>8>,>9>]]> > for> sublist>in> list_of_lists:> >for> item>in> sublist:> >print>(item, end>=>' '>)> >print>()> |
>
>Вихід
1 2 3 4 5 6 7 8 9>
Використання розуміння списку
У цьому прикладі створено вкладений список під назвою `nested_list`. Розуміння списку використовується для зведення вкладеної структури в один список під назвою `flattened_list`. Отриманий зведений список потім друкується, демонструючи стислий і потужний підхід до роботи зі списком.
Python3
nested_list>=> [[>1>,>2>,>3>], [>4>,>5>,>6>], [>7>,>8>,>9>]]> > flattened_list>=> [item>for> sublist>in> nested_list>for> item>in> sublist]> > print>(flattened_list)> |
if else if else if java
>
>Вихід
[1, 2, 3, 4, 5, 6, 7, 8, 9]>
Перерахування за вкладеним списком
У цьому прикладі створено список під назвою «мови», який представляє мови програмування. The enumerate() функція використовується в циклі for для перебору списку, надаючи як індекс, так і мову під час кожної ітерації. Оператор `print` відображає індексований список мов програмування з нумерацією, починаючи з 1.
Python3
nested_list>=> [[>1>,>2>,>3>], [>4>,>5>], [>7>,>8>]]> > for> i, inner_list>in> enumerate>(nested_list):> >for> j, element>in> enumerate>(inner_list):> >print>(f>'Value at index ({i}, {j}): {element}'>)> |
>
>Вихід
Value at index (0, 0): 1 Value at index (0, 1): 2 Value at index (0, 2): 3 Value at index (1, 0): 4 Value at index (1, 1): 5 Value at index (2, 0): 7 Value at index (2, 1): 8>
Використання функції itertools.chain().
У цьому прикладі itertools.chain() функція використовується для зведення вкладеного списку під назвою `nested_list`. Синтаксис `*nested_list` використовується для розпакування внутрішніх списків, і результатом є зведений список, який потім друкується.
Python3
from> itertools>import> chain> > nested_list>=> [[>1>,>2>,>3>], [>4>,>5>,>6>], [>7>,>8>,>9>]]> > flattened_list>=> list>(chain(>*>nested_list))> print>(flattened_list)> |
>
>Вихід
[1, 2, 3, 4, 5, 6, 7, 8, 9]>
Висновок
Отже, загальне розуміння синтаксису та різноманітних операцій, пов’язаних з Списки Python необхідний для ефективного маніпулювання даними та ітерації. Незалежно від того, чи працюєте ви з простим списком чи списком списків, можливості списків Python забезпечують потужну основу для обробки даних.