Python 如何迭代字典,为其余元素创建新的for循环?

Python 如何迭代字典,为其余元素创建新的for循环?,python,loops,for-loop,dictionary,Python,Loops,For Loop,Dictionary,我正试着用现有的那本词典编一本新词典 `dict1 = {'A':{}, 'B':{}, 'C':{}, 'D':{}, 'E':{}} for key, val in dict1.iteritems(): mytest = key newConditionFlag = getSummary(mytest) if newConditionFlag == 1: make dict2` 其中getSummary函数如下所示: `def getSummary

我正试着用现有的那本词典编一本新词典

`dict1 = {'A':{}, 'B':{}, 'C':{}, 'D':{}, 'E':{}}
 for key, val in dict1.iteritems():
    mytest = key
    newConditionFlag = getSummary(mytest)
    if newConditionFlag == 1:
        make dict2`
其中getSummary函数如下所示:

`def getSummary(mytest):
    newConditionFlag==0
    bVal = mytest.CanClose()
    if bVal == True:
        pass
    else:
        newConditionFlag=1
    return newConditionFlag`
如果B的newConditionFlag==1,那么我的dict2应该是

dict2='C':{},'D':{},'E':{}
。 同样,如果C的newConditionFlag==1

dict2='D':{},'E':{}
。 我该怎么做

我知道,对于一个简单的条件,如果我们想要访问剩余值,我们所做的是

`l = [1,2,3,4,5]
for i,j in zip(l, l[2:]):
    print j`

但在使用字典的情况下应该怎么做呢?如果我们用它给出的
TypeError:unhabable type

的相同方法进行尝试,那么唯一有意义的方法就是首先将字典转换为列表。对列表进行处理,然后转换回字典

l = sorted(dict1.items())
# do your thing
dict1 = dict(l)

“从那一点”的概念毫无意义——字典是无序的。正如@jornsharpe dictionary提到的,字典是无序的,你可能想用:但很难说它对你所做的有什么好处do@jonrsharpe我已经编辑了代码,希望有帮助