Найти в Дзене
<Блог Питониста>

Списки в Python. Индексы и срезы

Здравствуйте, дорогие читатели! Сегодня мы продолжим разбирать тему списков, а именно разберем индексы и срезы
Индексы
Итак, если мы обратимся к определению списков, а именно: список в Python- это упорядоченная коллекция элементов, то по слову «упорядоченная» мы сможем понять, что каждый элемент списка стоит на своем месте- индексе
Индекс присваивается каждому элементу списка, начиная с нуля и
Оглавление

Здравствуйте, дорогие читатели! Сегодня мы продолжим разбирать тему списков, а именно разберем индексы и срезы

Индексы

Итак, если мы обратимся к определению списков, а именно: список в Python- это упорядоченная коллекция элементов, то по слову «упорядоченная» мы сможем понять, что каждый элемент списка стоит на своем месте- индексе

Индекс присваивается каждому элементу списка, начиная с нуля и заканчивая последним элементом списка, к примеру в списке а, состоящем из одного элемента- единицы, будет находиться всего один индекс- 0. Чтобы его вызвать, нужно обратиться к списку, и сразу же в квадратных скобках указать номер индекса. Если мы укажем несуществующий индекс, то нам выдаст ошибку.

Если мы хотим обратиться сразу к последнему элементу списка (или начать нумерацию с конца), то мы можем сделать это с помощью обратных индексов: -1, -2, -3 и т.д

-2

Таким образом, в нашем массиве из 6 элементов, последний элемент имеет два индекса: 5 и -1.

Будьте внимательны, первый элемент всегда идет под нулевым индексом!

Срезы

Иногда нам нужно достать не один элемент из списка, а сразу несколько или даже много. Для этого используют срезы.

Создадим список из 10 элементов от 1 до 10. Итак, попробуем вывести на экран 4, 5 и 6. Помним, что первый элемент у нас под индексом 0, поэтому 4 у нас будет под индексом 3, то есть на единицу меньше- запишем 3 в квадратных скобках, а дальше ставим двоеточие (:), и ставим индекс последнего элемента, который нам нужно вызвать+1. (+1 так как второй индекс, который мы запишем на вывод, не включается) Соответственно, чтобы нам вывести 4, 5, 6, нужно записать: с[3:6]

-3

Идем дальше, операций со срезами достаточно много

Если мы попытаемся вызвать все элементы по индексам с 3 и до последнего используя операнду -1, то последний индекс среза не выведется, но мы можем указать до невероятности большое число, и тогда у нас уже выведутся все элементы списка, но есть другой способ: просто оставить поле пустым(с[n:]). Это также работает и в обратную сторону, то есть если нам нужно выводить все элементы с первого и до n, то мы оставляем поле для среза пустым (с[:n]). Я думаю, вы уже догадались, что чтобы вывести все элементы массива, то нужно оставить оба поля пустыми (c[:])

-4