Встречается на 1% собеседований по Python

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

Кортежи в Python хранятся в памяти как неизменяемые последовательности. В отличие от списков, они занимают меньше памяти, так как оптимизированы под статичное хранение данных.

Ключевые особенности:

  • Кортежи выделяются одним блоком памяти, что делает их более эффективными для итераций
  • При создании кортежа из одинаковых элементов Python может кэшировать и переиспользовать их (например, пустые кортежи или кортежи из мелких целых чисел)
  • Из-за неизменяемости не требуется резервирование дополнительного места для возможного расширения

Пример сравнения размера:

python
import sys
lst = [1, 2, 3]
tpl = (1, 2, 3)
print(sys.getsizeof(lst))  # 120 байт (может варьироваться)
print(sys.getsizeof(tpl))  # 72 байта

Для небольших кортежей (до 20 элементов) Python использует специальную оптимизацию, храня их как фиксированные структуры.

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы