2012-07-06 133 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)