Ich habe eine Python-Klasse mit Attributen mit den Namen: date1, date2, date3 usw.Wie können Klassenattribute in Python dynamisch erstellt und aufgerufen werden?
Während der Laufzeit habe ich eine Variable i, die eine ganze Zahl ist.
Was ich tun möchte, ist auf das entsprechende Datum Attribut in der Laufzeit basierend auf dem Wert von i zuzugreifen.
Zum Beispiel
wenn i == 1, möchte ich myobject.date1
zugreifen, wenn i == 2, I myobject.date2
zugreifen möchten Und ich tun möchte, etwas ähnliches für Klasse statt Attribut.
Zum Beispiel habe ich eine Reihe von Klassen: MyClass1, MyClass2, MyClass3, etc. Und ich habe eine Variable k.
wenn k == 1, ich will
wenn k == 2, eine neue Instanz von MyClass1 instanziiert ich kann ich das tun, um eine neue Instanz von MyClass2
Wie instanziiert will?
EDIT
Ich hoffe, mit einem Riesen zu vermeiden if-then-else-Anweisung der entsprechenden Attribut/Klasse auszuwählen.
Gibt es in Python eine Möglichkeit, den Klassennamen spontan mit dem Wert einer Variablen zu erstellen?
bearbeiten Sie bitte diese Frage. Bitte lesen Sie die Formatierungshinweise auf der rechten Seite der Seite. Bitte formatieren Sie Ihren Code richtig. –
Bitte formatieren Sie diese Frage korrekt. Ich möchte es als eine nützliche Frage aufwerten, da dies ein sehr schönes Beispiel für Metaprogrammierung und Introspektion ist. Aber es muss bearbeitet werden. –