【发布时间】:2016-11-12 07:04:59
【问题描述】:
您好,以下是我的 python/django 代码:
values = Record.objects.filter(record_id__in=[1,2,3], is_main_record=True)
if values .filter(status='open'):
all_item = ['sasi', 'kuttu','vava']
for item in items:
values1 = values.filter(set=mask, status='open')
print values1
上面的代码会给我每个项目中的对象。现在我想创建一个字典,这样我就可以创建如下的数据结构:
jobs = [
{'item': 'A', 'device': 'deviceA', 'log': 'logA'},
{'item': 'A', 'device': 'device1', 'log': 'ptrf1'},
{'item': 'B', 'device': 'deviceb', 'log': 'ptrfb'},
{'item': 'C', 'device': 'devicec', 'log': 'ptrfc'},
]
为此,我添加了如下内容:
jobs = []
values = Record.objects.filter(record_id__in=[1,2,3], is_main_record=True)
if values .filter(status='open'):
all_item = ['sasi', 'kuttu','vava']
for mask in all_item:
values1 = values.filter(set=mask, status='open')
for x in values1:
data = {'item' : x.item, 'device':x.device, 'log':x.log}
jobs.append(data)
print jobs
但工作总是给我最新的项目,而不是我上面提到的数据结构(每个项目的列表)。我该如何解决这个问题并实现我提到的数据结构?抱歉,Python 和编码新手。如果我问了任何愚蠢的问题,请原谅。在此先感谢各位。
【问题讨论】:
-
您可以摆脱所有循环 - 只需使用
.values()进行查看。
标签: python django dictionary