在下面的这段代码中,将迭代一个列表,并为列表中的每个条目构建一个由2个值构成的字典。然后将字典添加到新列表中。
下面的代码有效,有关打印语句的结果,请参见下文。
但是,是否有可能以一种更清晰的方式(例如通过列表理解)来做到这一点?
ccdl_rows = ccdl_obj.browse(self.cr, self.uid, ccdl_ids)
print 'ccdl_rows:', ccdl_rows
dist_lines = []
for ccdl in ccdl_rows:
dist_line = {}
dist_line['destination'] = ccdl.destination_id.code
dist_line['cost_center'] = ccdl.analytic_id.code
dist_lines.append(dist_line)
print 'dist_lines: ', dist_lines
ccdl_rows: [browse_record(cost.center.distribution.line, 12), browse_record(cost.center.distribution.line, 13), browse_record(cost.center.distribution.line, 14)]
dist_lines: [{'cost_center': u'BI133', 'destination': u'SUP'}, {'cost_center': u'MW109', 'destination': u'SUP'}, {'cost_center': u'BI196', 'destination': u'SUP'}]
当然:
dist_lines = [{'cost_center': ccdl.analytic_id.code,
'destination': ccdl.destination_id.code}
for ccdl in ccdl_rows]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句