2013-08-29 2 views
1
index = 0 
while (condition) : 
    ... 
    mydict = {"key1":[values], "key2":[values], "key3":[values]} 
    somefunction(mydict) 

def somefunc(mydict): 
    maindict[index] = mydict 
    index = index + 1 
    return mydict 
print maindict 

Вывод должен быть, как этотКак добавить словарь в другой словарь с помощью петель?

maindict = {0:{key1:[values]...} 
      1:{key1:[values]...} 
      . 
      . 
      } 

Я разборе файл и содержит много данных, когда удовлетворяет время цикла я получаю словарь под названием mydict, и я хочу, чтобы добавить это значение в основной словарь с использованием индекса, такого как 0,1,2 .. каждый раз, когда цикл насыщается?

+1

Не очень ясно, какой результат вы хотите получить. – mishik

+1

Ваш код не имеет смысла, и неясно, чего вы пытаетесь достичь. Не могли бы вы уточнить свой вопрос? Использовать допустимый синтаксис, предоставлять исполняемый код, описывать ввод и то, что вы хотите делать с вводом, что-то вроде этого? – user2357112

+0

Вы должны теперь глубина. – Alex

ответ

3

Просто от верхней части головы (если я правильно понял):

maindict = dict([x, mydict] for x in range(5)) 

Даст вам maindict:

{0: <mydict>, 1: <mydict>, ... , 4: <mydict>} 
+0

Все значения имеют один и тот же 'mydict' здесь, что может быть нежелательным. – user2357112

+0

Я получаю ошибку maindict = dict ([index: mydict] для индекса в диапазоне (5)) ^^ СинтаксисError: недопустимый синтаксис – no1

+0

a typo: '[x, mydict]' вместо '[x: mydict]' – mishik

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