Ich bin Neuling auf Python und YAML, ich habe eine Situation, wo ich brauche diese Datei zu halten, mit dem entsprechenden Daten angehängtWie man Yaml-Datei mit Python aktualisieren?
__blocks: {}
messages:
CANMessages:
- CAN: !!python/unicode 'IuK-CAN'
D0:
- 13
D1:
- 0
D2:
- 0
D3:
- 0
D4:
- 0
D5:
- 0
D6:
- 240
D7:
- 0
DL: 7
Description: !!python/unicode 'clo'
ID: 574
Period: -1
id: d3206970-20f2-11e6-bfd7-185e0fc5ec33
timestamp: 1464013797.767
- CAN: !!python/unicode 'IuK-CAN'
D0:
- 13
D1:
- 0
D2:
- 0
D3:
- 0
D4:
- 0
D5:
- 0
D6:
- 240
D7:
- 0
DL: 7
Description: !!python/unicode 'cli'
ID: 574
Period: -1
id: d37y069700f2-11e6-bfd7-185e0fc5ec33
timestamp: 1487013797.767
MOSTMessages: []
pages: []
settings: {}
Nur Inhalte, die hier sind von -CAN den Teil angefügt werden muss zu
- CAN: //1
..
timestamp: xyznumbers
- CAN: //2
..
timestamp: xyznumbers
- CAN: //n
..
timestamp: xyznumbers
Jeder Anhang hier ist ein Testszenario für CAN.
Logik, die ich geschrieben habe, hängt tatsächlich alles immer wieder an, ich weiß nicht, wie man den erforderlichen Block einfach anhängt.
data = {'__blocks': {},
'messages':
{'CANMessages':
[
{'DL': 7,
'Description': u'%s'%self.Description,
'timestamp': current_milli_time,
'D3': ['%s'%self.D3],
'Period': self.Period,
'ID': hex(self.ID),
'CAN': u'%s'%self.CAN,
'D6': ['%s'%self.D6],
'D7': ['%s'%self.D7],
'D4': ['%s'%self.D4],
'D5': ['%s'%self.D5],
'D2': ['%s'%self.D2],
'id': 'xxx-xxx-xxx-xxx',
'D0': ['%s'%self.D0],
'D1': ['%s'%self.D1]
}
],
'MOSTMessages': []},
'pages': [],
'settings': {}}
with open(fileMock, 'a') as outfile:
outfile.write(yaml.dump(data, default_flow_style=False))
Ja, ich stimme dem zu und akzeptiere dies als echte Antwort. –