Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Python: tuple, immutability

Как устроен кортеж с точки зрения внутреннего представления в Python?

Вопрос проверяет понимание внутреннего устройства кортежей и отличий от списков на уровне памяти и мутабельности.

Короткий ответ

Кортеж — это неизменяемая последовательность, которая хранит ссылки на объекты в фиксированном массиве. После создания размер кортежа изменить нельзя. Благодаря неизменяемости Python может оптимизировать работу с кортежами и использовать их как ключи словаря. Элементы кортежа могут быть изменяемыми, но сам контейнер — нет.

Длинный ответ

Как кортеж хранится в памяти

Кортеж представляет собой структуру, содержащую:

  • фиксированное количество ссылок на объекты

  • размер, который не меняется после создания

Фактически кортеж похож на список, но:

  • не поддерживает изменение длины

  • не поддерживает операции добавления и удаления

Пример:

t = (1, 2, 3)

В памяти хранится:

  • объект кортежа

  • массив ссылок на числа 1, 2, 3

Почему кортеж быстрее списка

Кортеж имеет некоторые преимущества:

  1. Не требуется хранить дополнительную информацию для изменения размера

  2. Нет операций изменения структуры

  3. Возможны оптимизации интерпретатора

Важный нюанс

Неизменяемость относится к контейнеру, а не к объектам внутри:

t = ([1, 2], 3)
t[0].append(4)  # допустимо

Список изменился, но кортеж остался тем же объектом.

Вывод

Кортеж — это компактная неизменяемая последовательность, оптимизированная для хранения фиксированного набора ссылок. Его используют, когда структура данных не должна изменяться.

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    4

  • Сложность:

    5

Навыки

  • Python

    Python

Ключевые слова

#tuple

#immutability

Подпишись на Python Developer в телеграм

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.