Sobes.tech
Junior — Middle

Koje strukture podataka mogu da se koriste umesto običnog rečnika?

sobes.tech АИ

Одговор од АИ

Уместо обичног речника (dict) у Python-у можете користити следеће структуре података:

  • collections.OrderedDict — чува ред уноса елемената (пре Python 3.7 ово је било важно, сада је обичан dict такође уредан).
  • collections.defaultdict — речник са подразумеваном вредношћу за недостајуће кључеве.
  • collections.Counter — речник за бројање елемената.
  • types.MappingProxyType — неизменљиви (само за читање) речник.
  • 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})