Мне нужно минимизировать количество ответов API. Один из способов сделать это - удалить нулевые атрибуты. Это ставит задачу создать класс данных, который я могу создавать динамически.
Мне удалось создать класс Dynami c, содержащий необходимые мне данные (просмотр в журнале). Но мне не удалось вставить его в родительский класс. Часть ParentClass - это Emtpy с этим logi c.
@dataclass
class VR: pass
@dataclass
class ResultParent:
validationResult: VR
matchCandidate: List[matchCandidates] = field(default_factory=list)
#create and pop dynamic class
vr = VR()
if valres.matchStatusCode is not None:
vr.matchStatusCode = valres.matchStatusCode
if valres.matchStatusReason is not None:
vr.matchStatusReason = valres.matchStatusReason
...
#This pprint works and the attr/values are what we want
pprint(vars(vr))
#Create ParentClass
obj = ResultParent([vr],[])
# The result of the above command is empty
#Code then continues on to populate matchCandidates and then the ParentClass - no issues there