def __len__(self):
    return len(self._dict)

def __iter__(self):
    return iter(self._dict)

def __hash__(self):
    if self._hash is None:
        self._hash = hash(frozenset(list(self._dict.items())))
return self._hash

def __eq__(self, other):
    return self._dict == other._dict
Неизменяемый словарь, используйте только как ключ для другого словаря