from typing import ClassVar
from dataclasses import dataclass
@dataclass
class Feld:
_id_to_instance: ClassVar[dict] = {}
id: str
value: str
def __post_init__(self):
self._id_to_instance[self.id] = self
@classmethod
def get_instance_by_id(cls, id):
return cls._id_to_instance[id]
for id, value in ('id1', 'value1'), ('id2', 'value2'):
Feld(id, value)
print(Feld.get_instance_by_id('id2'))
ZnJvbSB0eXBpbmcgaW1wb3J0IENsYXNzVmFyCmZyb20gZGF0YWNsYXNzZXMgaW1wb3J0IGRhdGFjbGFzcwoKQGRhdGFjbGFzcwpjbGFzcyBGZWxkOgogICAgX2lkX3RvX2luc3RhbmNlOiBDbGFzc1ZhcltkaWN0XSA9IHt9CiAgICBpZDogc3RyCiAgICB2YWx1ZTogc3RyCgogICAgZGVmIF9fcG9zdF9pbml0X18oc2VsZik6CiAgICAgICAgc2VsZi5faWRfdG9faW5zdGFuY2Vbc2VsZi5pZF0gPSBzZWxmCgogICAgQGNsYXNzbWV0aG9kCiAgICBkZWYgZ2V0X2luc3RhbmNlX2J5X2lkKGNscywgaWQpOgogICAgICAgIHJldHVybiBjbHMuX2lkX3RvX2luc3RhbmNlW2lkXQoKZm9yIGlkLCB2YWx1ZSBpbiAoJ2lkMScsICd2YWx1ZTEnKSwgKCdpZDInLCAndmFsdWUyJyk6CiAgICBGZWxkKGlkLCB2YWx1ZSkKCnByaW50KEZlbGQuZ2V0X2luc3RhbmNlX2J5X2lkKCdpZDInKSk=