Ich möchte ein dynamisches Objekt (innerhalb eines anderen Objekts) in Python erstellen und ihm dann Attribute hinzufügen.
Ich habe es versucht:
obj = someobject
obj.a = object()
setattr(obj.a, 'somefield', 'somevalue')
aber das hat nicht funktioniert.
Irgendwelche Ideen?
bearbeiten:
Ich setze die Attribute aus einer forSchleife, die eine Liste von Werten durchläuft, z
params = ['attr1', 'attr2', 'attr3']
obj = someobject
obj.a = object()
for p in params:
obj.a.p # where p comes from for loop variable
In dem obigen Beispiel , das ich bekommen würde obj.a.attr1, obj.a.attr2, obj.a.attr3.
Ich habe die setattrFunktion verwendet, weil ich nicht wusste, wie man mit obj.a.NAMEeiner forSchleife umgeht.
Wie würde ich das Attribut basierend auf dem Wert von pim obigen Beispiel festlegen ?
a = object()und Sie brauchen obj.a = object(). Ich spreche wieder über das Beispiel, in Ihrem eigentlichen Code könnte ein Objekt innerhalb eines Objekts nützlich sein.