2016-10-02 82 views
0

我有类型的字典列表如何创建类型的字典名单

[{'name_field': u'casino_logo', 'contentid_id': 15L, 'value': u'assets/images/crown.png', 'title': u'Royal casino casino4'}, {'name_field': u'casino_logo', 'contentid_id': 16L, 'value': u'assets/images/crown.png', 'title': u'Royal casino casino1'}, {'name_field': u'casino_logo', 'contentid_id': 17L, 'value': u'assets/images/crown.png', 'title': u'Royal casino casino3'}, {'name_field': u'casino_logo', 'contentid_id': 18L, 'value': u'assets/images/crown.png', 'title': u'Royal casino casino2'}, {'name_field': u'raiting_casino', 'contentid_id': 15L, 'value': u'9.9', 'title': u'Royal casino casino4'}, {'name_field': u'raiting_casino', 'contentid_id': 16L, 'value': u'9', 'title': u'Royal casino casino1'}, {'name_field': u'raiting_casino', 'contentid_id': 17L, 'value': u'8.2', 'title': u'Royal casino casino3'}, {'name_field': u'raiting_casino', 'contentid_id': 18L, 'value': u'9.3', 'title': u'Royal casino casino2'}, {'name_field': u'bonus_code', 'contentid_id': 15L, 'value': u'AX777', 'title': u'Royal casino casino4'}, {'name_field': u'bonus_code', 'contentid_id': 16L, 'value': u'AX7772', 'title': u'Royal casino casino1'}, {'name_field': u'bonus_code', 'contentid_id': 17L, 'value': u'AX777', 'title': u'Royal casino casino3'}, {'name_field': u'bonus_code', 'contentid_id': 18L, 'value': u'AX7772', 'title': u'Royal casino casino2'}, {'name_field': u'bonus_summa', 'contentid_id': 15L, 'value': u'200', 'title': u'Royal casino casino4'}, {'name_field': u'bonus_summa', 'contentid_id': 16L, 'value': u'200', 'title': u'Royal casino casino1'}, {'name_field': u'bonus_summa', 'contentid_id': 17L, 'value': u'200', 'title': u'Royal casino casino3'}, {'name_field': u'bonus_summa', 'contentid_id': 18L, 'value': u'200', 'title': u'Royal casino casino2'}, {'name_field': u'bonus_min_depozit', 'contentid_id': 15L, 'value': u'1000000', 'title': u'Royal casino casino4'}, {'name_field': u'bonus_min_depozit', 'contentid_id': 16L, 'value': u'1000000', 'title': u'Royal casino casino1'}, {'name_field': u'bonus_min_depozit', 'contentid_id': 17L, 'value': u'1000000', 'title': u'Royal casino casino3'}, {'name_field': u'bonus_min_depozit', 'contentid_id': 18L, 'value': u'1000000', 'title': u'Royal casino casino2'}, '...(remaining elements truncated)...'] 

我怎样才能得到

{casinos:[{'id':16,'title':Royal casino casino3,'fields':[{'name_feild':'bonus_min_depozit','value':'10',...}],...}]} 

我试过结构:

for item in casinos: 
    info_casino[item['contentid_id']].append({'name_field':item['name_field'],'value':item['value']}) 
    casino[item['contentid_id']] = {'fields':info_casino[item['contentid_id']],'title':item['title']} 

但它没没有工作。

+0

而不是*“没有工作” *,给出[MCVE。 – jonrsharpe

回答

1

可以使用“字典解析”实现这一为:

my_dict = {item['name_field']: item for item in my_list} 

其中my_list是在问题中提到的dict名单。

如果你想删除生成字典的'name_field'值,你可以创建新的dict为:

my_dict = {} 
for item in my_list: 
    my_dict[item['name_field']] = item 
    del item['name_field'] 
+0

请勿将代码格式设置为非代码或标识符的内容。 – jonrsharpe