1

我有一个结构如下的字典:

{ 'records':[['15','2013-04-02','Mexico','blah','bleh',1,2],['25','2013-04-02','Italy','meh','heh',3,4]], 'attributes':['id','date','location','descr1','descr2','total1','total2'] }

它是使用 json.load 从 json 创建的。

如何遍历记录键以使 ['records'][0] 成为新字典中的键,而 ['records'] 中每个列表的其余部分成为该键的值。

我在想这样的事情,甚至可能不可能,我是 Python 新手:

{ '15':['2013-04-02','Mexico','blah','bleh',1,2], '25':['2013-04-02','Italy','meh','heh',3,4] }

有人可以指出我正确的方向来迭代原始字典以创建新字典吗?

4

3 回答 3

7

如果d是你的字典:

In [5]: {rec[0]:rec[1:] for rec in d['records']}
Out[5]: 
{'15': ['2013-04-02', 'Mexico', 'blah', 'bleh', 1, 2],
 '25': ['2013-04-02', 'Italy', 'meh', 'heh', 3, 4]}
于 2013-04-04T19:03:55.290 回答
1
rec_lsts = orgi_dict['records']
new_dict = {}
for l_list in rec_lsts:
    new_dict[l_lst[0]] = l_lst[1:]
于 2013-04-04T19:04:31.947 回答
0
d = { 'records':[['15','2013-04-02','Mexico','blah','bleh',1,2], ['25','2013-04-02','Italy','meh','heh',3,4]], 'attributes':['id','date','location','descr1','descr2','total1','total2']}

new_d = {}

for a in d['records']:
    new_d[a[0]] = a[1:]

print new_d
于 2013-04-04T19:03:38.567 回答