Кортежи в Python — это структуры данных, похожие на списки, но неизменяемые и занимающие меньше памяти.
Неизменяемость
После создания элементы кортежа нельзя изменить. Это делает их похожими на константы.
Экономия памяти
Кортежи занимают меньше памяти, чем списки. Разница важна при обработке больших объемов данных.
Создание кортежей
Кортежи создаются с помощью круглых скобок:
мой_кортеж = (1, 2, 3, 4, 5, 6, 7, 8)
Разрешены разные типы данных: числа, булевы значения, строки.
Доступ к элементам осуществляется с помощью индексов в квадратных скобках:
print(мой_кортеж[1]) # Выведет 2
print(мой_кортеж[0:5]) # Выведет срез с первого по пятый элемент (индексы 0-4)
Изменение элемента вызовет ошибку TypeError: ‘tuple’ object does not support item assignment:
мой_кортеж[0] = 10 # Ошибка
Основные функции
Кортежи имеют ограниченный набор функций:
- count(): подсчитывает вхождения элемента.
print(мой_кортеж.count(6)) # Выведет 1
- len(): возвращает длину.
print(len(мой_кортеж)) # Выведет 8
Вывод всего кортежа:
print(мой_кортеж) # Выведет весь кортеж
Альтернативные способы создания
Кортежи можно создавать без скобок, используя запятые:
кортеж_без_скобок = 1, 2, 3, "строка"
print(кортеж_без_скобок) # Выведет кортеж
Кортеж из одного элемента:
кортеж_один_элемент = 5,
print(кортеж_один_элемент) # Выведет кортеж
Перебор элементов
Для перебора используется цикл for:
for элемент in мой_кортеж:
print(элемент)
Преобразование типов
Преобразование списка в кортеж:
мой_список = [1, 2, 3, 4, 5]
мой_новый_кортеж = tuple(мой_список)
print(мой_новый_кортеж) # Выведет кортеж
Преобразование строки в кортеж:
моя_строка = "Hello, world!"
мой_строковый_кортеж = tuple(моя_строка)
print(мой_строковый_кортеж) # Выведет кортеж из символов
Кортежи — неизменяемые структуры данных, занимающие меньше памяти, чем списки. Они подходят для передачи данных, где важно предотвратить изменения. Для изменяемых данных используйте списки.