Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将值附加到python列表中,而不是将值替换为最新值_Python_Django_Dictionary - Fatal编程技术网

如何将值附加到python列表中,而不是将值替换为最新值

如何将值附加到python列表中,而不是将值替换为最新值,python,django,dictionary,Python,Django,Dictionary,您好,下面是我的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'

您好,下面是我的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和编码的新手。如果我问了任何愚蠢的问题,请原谅。提前感谢各位。

jobs=[]
jobs = []
values = Record.objects.filter(record_id__in=[1,2,3], is_main_record=True, status='open', set__in=['sasi', 'kuttu','vava'])
if values.exists():
   all_item = ['sasi', 'kuttu','vava']
   for mask in all_item:
       for x in values:
           data = {'item' : x.item, 'device': x.device, 'log': x.log}
           jobs.append(data)

print jobs # <--- print here, then you see the whole list
values=Record.objects.filter(Record_id____in=[1,2,3],is_main_Record=True,status='open',set__in=['sasi','kuttu','vava']) 如果值.exists(): 所有项目=['sasi'、'kuttu'、'vava'] 对于所有_项中的掩码: 对于x值: 数据={'item':x.item,'device':x.device,'log':x.log} jobs.append(数据)
打印作业#@BLACKPANTHER请查看我的更新答案,只需一个
.filter()
,我会用这种方式做得很好!!谢谢doniyor!您只需使用
.values()
查看它,就可以摆脱所有循环。