2012-07-06 395 views
4

我是python的新手,想在for循环中创建一个新字典。 例如:如何在python for循环中创建一个字典?

for x in data: 
    a_data = x.a 
    model_obj = modelname.objects.get(id=x.b) 
    b_data = model_obj.address 
    c_data = x.c 
    d_data = x.d 

我要创建哪些工作应该作为第一次迭代

'a_data': x.a 
'b_data':model_obj.address 
'c_data':x.c 
'd_data':x.d 

等为下一次迭代的字典。我认为我们可以使用:list of dictioanrydictionary of dictionary。我甚至不知道哪一个更好。我必须将这些数据呈现给模板。

任何帮助将是明显的:)

+0

下一次迭代会有什么结果?你想要的清单列表? – Rohan 2012-07-06 10:35:11

+0

在第二次迭代中,它将以相同的顺序打印x [1]然后x [2] – 2012-07-06 10:36:01

回答

7

这是你想要的?

listofobjs = [] 
for x in data: 
    d = { 
     'a_data': x.a, 
     'b_data':model_obj.address, 
     'c_data':x.c, 
     'd_data':x.d, 
    } 
    listofobjs.append(d)