Sobes.tech
Back to questions
Junior — Middle
55

Какие структуры данных можно использовать вместо обычного словаря?

Companies where asked
СКАИД

Answer from AI

sobes.tech AI

Вместо обычного словаря (dict) в Python можно использовать следующие структуры данных:

  • collections.OrderedDict — сохраняет порядок добавления элементов (до Python 3.7 это было важно, сейчас обычный dict тоже упорядочен).
  • collections.defaultdict — словарь с значением по умолчанию для отсутствующих ключей.
  • collections.Counter — словарь для подсчёта количества элементов.
  • types.MappingProxyType — неизменяемый (read-only) словарь.
  • dict с использованием __slots__ или специализированные классы для оптимизации памяти.
  • dataclasses или namedtuple — для фиксированных наборов полей с доступом по имени.

Пример использования defaultdict:

from collections import defaultdict

counts = defaultdict(int)
for word in ['apple', 'banana', 'apple']:
    counts[word] += 1

print(counts)  # defaultdict(<class 'int'>, {'apple': 2, 'banana': 1})