Benutzerdefinierte Klassenausgabe in PyYAML formatieren
Ich arbeite hier an einem einfachen Beispiel, aber die Dokumente lassen mich immer noch ein bisschen verwirrt.
Hier ist der Beispielcode:
class A(yaml.YAMLObject):
yaml_tag = u'!A'
def __init__(self, val):
self.val = val
if __name__ == '__main__':
t = datetime.time()
a = A(t)
print yaml.dump(a)
print yaml.load(yaml.dump(a)).val == t
Die Ausgabe ist
! A val: !! python / object / apply: datetime.time ["\ 0 \ 0 \ 0 \ 0 \ 0 \ 0"]
Wah
So, es scheint originalgetreu zu d- / serialisieren, aber das voreingestellte Zeitobjektformat lässt zu wünschen übrig. Wie kann ich es schöner machen und gleichzeitig meine mächtigen Kipp- / Ladekräfte bewahren?
Vielen Dan