对象:字典改造和反
data = [{'key': 11, 'country': 'USA'},{'key': 21, 'country': 'Canada'},{'key': 12, 'country': 'USA'}]
的结果应该是:
{'USA': {0: {'key':11}, 1: {'key': 12}}, 'Canada': {0: {'key':21}}}
我开始实验:
result = {}
for i in data:
k = 0
result[i['country']] = dict(k = dict(key=i['key']))
,我也得到:
{'Canada': {'k': {'key': 21}}, 'USA': {'k': {'key': 12}}}
那么我怎么能把柜台代替k
?也许有一种更优雅的方式来创建字典?
为什么“加拿大”:{1:{'key':21}}'而不是'加拿大':{0:{'key':21}}? – 2012-03-15 19:34:59
对不起,我犯了一个错误。固定。 – vlad 2012-03-15 19:36:46
@vlad发布您的解决方案,以便其他人可以获得收益 – 2012-03-15 19:49:02