Python: Списки
2026-02-26 19:07 Diff

Деструктуризация (destructuring) – синтаксическая возможность "раскладывать" элементы списка (и не только) в отдельные переменные. Деструктуризация относится к необязательным, но очень приятным возможностям языка. Рассмотрим ее на примерах.

Представьте, что у нас есть список из двух элементов, которыми мы хотим оперировать в нашей программе. Самый простой вариант использования его элементов — постоянное обращение по индексу point[0] и point[1].

Индексы ничего не говорят о содержимом, и для понимания этого кода придется прикладывать дополнительные усилия. Гораздо лучше сначала присвоить эти значения переменным с хорошими именами. Тогда код станет читаемым:

Код стал значительно понятнее, хотя и длиннее. С помощью деструктуризации то же самое можно сделать короче:

Деструктуризация работает на любом уровне вложенности. Например, с ее помощью можно извлекать данные из списков внутри списков:

Деструктуризация в циклах

Разложение списка можно использовать не только как отдельную инструкцию в коде, но и в циклах:

В этом примере каждый элемент в цикле является списком. Без деструктуризации цикл выглядит так:

Внутри for переменная item - это список, поэтому вместо нее можно подставить деструктуризацию [x, y].

Деструктуризация строк

В python строки ведут себя подобно спискам и их также можно деструктурировать.