2013-04-04 2 views
1

У меня есть ДИКТ структурировано, как показано ниже:Dict, содержащие ключи со списками списков

{ '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 с помощью json.load.

Как я могу перебирать ключ записи, чтобы сделать ['records'] [0] ключом в новом dict, а остальная часть каждого списка в ['records'] будет значением для этого ключа.

Что-то вроде этого является то, что я имею в виду, не может быть даже возможно, я новичок в Python:

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

Может кто-то мне точку в правильном направлении, чтобы идти о переборе оригинальной Dict для создания новый?

+1

вы хотите значение быть 'list' или строковое представление списка? – tacaswell

+0

Пожалуйста, укажите правильный результат, это недействительно: ''[' 2013-04-02 ',' Italy ',' meh ',' heh ', 3,4]' –

+0

Я уверен, что список, я собираюсь чтобы получить доступ к содержимому этих списков с их индексами. Я тоже исправил выход, извините. –

ответ

1
rec_lsts = orgi_dict['records'] 
new_dict = {} 
for l_list in rec_lsts: 
    new_dict[l_lst[0]] = l_lst[1:] 
+0

Спасибо, это работает. –

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 
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]} 
+2

Почему downvote? – NPE

Смежные вопросы