Python dict中的迭代器

Python dict中的迭代器,python,dictionary,Python,Dictionary,下面是一个简单的嵌套字典: wordFrequency = {'bit':{1:3,2:4,3:19,4:0},'red':{1:0,2:0,3:15,4:0},'dog':{1:3,2:0,3:4,4:5}} 我试图找出这两段代码的不同之处: for word, innerDictionary in wordFrequency.iteritems(): for fileNum, appearances in innerDictionary.iteritmes(): 及 我知道第一个

下面是一个简单的嵌套字典:

wordFrequency = {'bit':{1:3,2:4,3:19,4:0},'red':{1:0,2:0,3:15,4:0},'dog':{1:3,2:0,3:4,4:5}}
我试图找出这两段代码的不同之处:

for word, innerDictionary in wordFrequency.iteritems():
    for fileNum, appearances in innerDictionary.iteritmes():

我知道第一个允许我将内部字典的键和值分别分配给
fileNum
和外观


但是,我不清楚第二段代码是否与此相同?

以下命令:

for fileNum, appearances in wordFrequency.get(word, {}).iteritems():
将只给您一个值(嵌套字典),但如果您希望它具有与前面代码相同的效果,因为
get()
的函数第一个参数必须是字典的键,您需要获取键并将代码放入循环中:

for word in  wordFrequency.keys() :
   for fileNum, appearances in wordFrequency.get(word, {}).iteritems():

第一个版本迭代
wordFrequency
的所有值,而后者只迭代一个值(
word
的值)
for word in  wordFrequency.keys() :
   for fileNum, appearances in wordFrequency.get(word, {}).iteritems():