Зарегистрируйтесь для доступа к 15+ бесплатным курсам по программированию с тренажером

Синтаксис Python: Списки

Списки в Python представляют любые упорядоченные наборы, коллекции элементов, будь то курсы на Хекслете, студенты в группе или друзья в вашей социальной сети. Задача списка — представить такие коллекции в виде единой структуры, которая позволяет работать с ними как с единым целым.

Определение списка

# Создание пустого списка
items = []

# Создание списка с тремя элементами
animals = ['cats', 'dogs', 'birds']

В примере происходит определение списка ['cats', 'dogs', 'birds'], который затем присваивается переменной animals.

Обратите внимание на именование переменных, содержащих списки. Они во множественном числе. Это подчеркивает природу переменной и делает код проще для анализа.

Получение данных

Элементы в списке упорядочены слева направо. Каждый элемент имеет порядковый номер, называемый индексом. Индексация списка начинается с нуля. То есть первый элемент списка доступен по индексу 0, второй — по индексу 1 и так далее. Для извлечения элемента из списка по индексу используется особый синтаксис:

animals = ['cats', 'dogs', 'birds']
animals[0] # 'cats'
animals[1] # 'dogs'

# Последний индекс в списке всегда меньше размера списка на единицу.
# В этом списке три элемента, но последний индекс равен двум
animals[2] # 'birds'

Узнать размер списка можно, с помощью функции len().

animals = ['cats', 'dogs', 'birds']
# У списков много других методов, с которыми мы познакомимся в процессе прохождения курсов.
len(animals) # 3

В реальных задачах индекс часто вычисляется динамически, поэтому обращение к конкретному элементу происходит с использованием переменных:

i = 1
animals = ['cats', 'dogs', 'birds']
animals[i] # 'dogs'

И даже так:

i = 1
j = 1
animals = ['cats', 'dogs', 'birds']
animals[i + j] # 'birds'

Такой вызов возможен по одной простой причине — внутри скобок ожидается выражение. А там, где ожидается выражение, можно подставлять все, что вычисляется. В том числе вызовы функций:

animals = ['cats', 'dogs', 'birds']
animals[len(['a', 'b'])] # 'birds'

В Python индексы можно указывать не только положительные, но и отрицательные. В таком случае отсчет происходит с конца списка. Довольно часто в задачах с использованием списков нужно взять последний элемент. В Python для этого достаточно лишь указать индекс элемента -1:

animals = ['cats', 'dogs', 'birds']
animals[-1] # 'birds'
animals[-2] # 'dogs'

Дополнительные материалы

  1. Документация

Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты

Для полного доступа к курсу нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
1000
упражнений
2000+
часов теории
3200
тестов

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff
Рекомендуемые программы
профессия
Обучитесь разработке бэкенда сайтов и веб-приложений — серверной части, которая отвечает за логику и базы данных
10 месяцев
с нуля
Старт 28 ноября
профессия
новый
Собирайте, анализируйте и интерпретируйте данные, улучшайте бизнес-процессы и продукт компании. Обучитесь работе с библиотеками Python
9 месяцев
с нуля
Старт 28 ноября

Используйте Хекслет по-максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»