Задача в следующем:
1) имеется класс, имеющий 4 свойства, 2 из которых "только для чтения"
2) нужно создать второй класс (в каком-то роде dict-like), состоящий из последовательности экземпляров первого класса и в котором должен использоваться составной ключ из вышеупомянутых двух readonly-свойств
Как сделать это лучше?
Надеюсь, объяснил более или менее понятно
Пробовал сделать, реализовав для первого класса методы __eq__ и __hash__, а во втором хранил экземпляры первого класса во множестве. Примерно так:
gist. Но мне не особо это нравится: создание множества, конечно, происходит по "составному ключу", но получить значение по этому ключу нельзя
Смотрел библиотеку
collections, но тоже не высмотрел подходящее