我建立了这样的字典清单

lst = [{'name': nameobj, Classobj1: "string", Classobj2: "string"}, \
{'name': nameobj, Classobj1: "string", Classobj2: "string"}]


我正在使用

for dic in lst:
   for k,v in dic:   # here is the line has probloem! What it happens?
       #process


错误消息就像“ Classname”对象不可迭代。

最佳答案

遍历字典只是遍历键,而不是键值对。所以就行

for k,v in dic:


Python仅使用诸如Classobj1之类的键,并尝试将其解包以使其与元组k,v匹配。由于无法迭代Classobj1,因此无法解压缩它以匹配两个项目,这就是为什么会出现此错误的原因。

要遍历键值对,请使用items()或iteritems():

for k,v in dic.items():

10-04 22:22