На этом шаге мы рассмотрим основы этой структуры данных.
Списки (lists) являются составной частью ядра языка Python.
См. документацию Python "list": https://docs.python.org/3/tutorial/introduction.html#lists
и https://docs.python.org/3/tutorial/datastructures.html#more-on-lists.
Несмотря на свое имя, списки Python реализованы как динамические массивы. Это означает, что список допускает добавление и удаление элементов и автоматически корректирует резервное хранилище, в котором эти элементы содержатся, путем выделения или высвобождения оперативной памяти.
Списки Python могут содержать произвольные элементы - в Python абсолютно "всё" является объектом, включая и функции. Поэтому вы можете сочетать и комбинировать разные типы данных и хранить их все в одном списке.
Такая возможность может быть очень мощной, но у нее есть и обратная сторона: поддержка многочисленных типов данных одновременно означает, что данные, как правило, упакованы менее плотно. И в результате вся структура занимает больше места.
>>> arr = ['один', 'два', 'три'] >>> arr[0] 'один' # Списки имеют хороший метод repr: >>> arr ['один', 'два', 'три'] # Списки могут изменяться: >>> arr[1] = 'привет' >>> arr ['один', 'привет', 'три'] >>> del arr[1] >>> arr ['один', 'три'] # Списки могут содержать произвольные типы данных: >>> arr.append(23) >>> arr ['один', 'три', 23]
На следующем шаге мы поговорим о кортежах.