Кортеж (tuple) — это еще один вид последовательности в Python, похожий на список. Кортеж позволяет хранить сразу несколько значений в одной переменной. Главное отличие от списка — кортеж нельзя изменить после создания: его элементы нельзя удалять, заменять или добавлять новые, кортеж неизменяемый.
Если данные всегда должны оставаться одинаковыми, например, координаты точки или дни недели, то удобно использовать кортеж.
Создание кортежа очень похоже на создание списка, только вместо квадратных скобок используются круглые:
# Простой кортеж из чисел
numbers = (1, 2, 3)
# Кортеж из разных типов
info = ("Вася", 18, True)
# Кортеж из одного элемента (обязательно с запятой!)
single = (42,) # Обратите внимание на запятую
Если не указать запятую при создании кортежа из одного элемента, Python не создаст кортеж:
not_tuple = (42) # это просто число 42, а не кортеж!
tuple_one = (42,) # вот это кортеж из одного элемента
Зачем нужны кортежи?
Хранить данные, которые не должны изменяться (надежное хранилище).
Они быстрее работают, чем списки в некоторых случаях.
Подходят для упаковки нескольких значений (например, функция может возвращать сразу несколько результатов как кортеж).
Могут быть полезными внутри типов данных, которые мы изучим далее.
Индексация в кортеже работает точно так же, как в списке: