Ich muss eine Reihe flexibler Strukturen (Objekte mit einer einfachen Sammlung von benannten Feldern, in denen Sie später neue Felder hinzufügen können, aber ich brauche keine Methoden oder Vererbung oder ähnliches) in Python definieren 2.7. (Der Kontext ist, dass ich Sachen aus binären Dateien mit struct.unpack_from lese und dann weitere Daten zu den Ergebnissen hinzufüge.)Kurze flexible Strukturdefinition
Eine Klasse erfüllt die Anforderungen, z.
class Thing:
def __init__(self, foo, bar):
self.foo = foo
self.bar = bar
Der einzige Nachteil ist, dass jeder Feldname dreimal ausgeschrieben werden muss. collections.namedtuple gibt eine genauere Definitionssyntax, aber Sie können den resultierenden Objekten keine Felder hinzufügen.
Gibt es eine Möglichkeit, die Flexibilität einer Klasse mit mindestens der Kürze der Sammlungen zu erhalten.namedtuple?
Haben Sie überlegten, ob Sie Diktate verwenden sollten? –