【发布时间】:2016-09-26 00:23:03
【问题描述】:
我是 python 和 YAML 的新手,我需要保留这个文件,并附加相关数据
__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: {}
这里需要附加的只有-CAN到时间戳的部分
- CAN: //1
..
timestamp: xyznumbers
- CAN: //2
..
timestamp: xyznumbers
- CAN: //n
..
timestamp: xyznumbers
这里的每个附加都是 CAN 的测试场景。
我编写的逻辑实际上一遍又一遍地附加所有内容,我不知道如何附加所需的块。
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) )
【问题讨论】: