2013-08-29 44 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]...} 
      . 
      . 
      } 

我解析一个文件,它包含很多数据,当while循环满足我会得到一个名为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(索引:mydict]索引范围(5)) ^ SyntaxError:无效的语法 – no1

+0

错字:'[x,mydict]'而不是'[x:mydict]' – mishik

3

字典解析:

{i: my_dict for i in range(5)}