Python ValueError:太多值无法解包

一世 :

我从这段代码中得到该异常:

class Transaction:
    def __init__ (self):
        self.materials = {}

    def add_material (self, m):
        self.materials[m.type + m.purity] = m

    def serialize (self):
        ser_str = 'transaction_start\n'

        for k, m in self.materials:
            ser_str += m.serialize ()

        sert += 'transaction_end\n'
        return ser_str

for行是引发异常的行。ms为Material对象。有人有什么想法吗?

Johnsyweb:

self.materials是一个dict,默认情况下,您仅迭代键(字符串)。

由于self.materials具有两个以上的键*,因此无法将它们解压到tuplek, m”中,因此引发异常ValueError

在Python 2. x中,要遍历键和值(tuplek, m”),我们使用self.materials.iteritems()

但是,由于无论如何都将键扔掉了,因此还可以简单地遍历字典的值:

for m in self.materials.itervalues():

在Python 3. x中,preferred dict.values()(返回字典视图对象):

for m in self.materials.values():

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

python ValueError:太多值无法解包(预期...。)

OpenCV python:ValueError:太多值无法解包

OpenCV Python Numpy:ValueError:太多值无法解包(预期2)

ValueError:太多值无法解包-OpenCV Python HoughLines

Python-ValueError:太多值无法解包-为什么?

ValueError:太多值无法解包:python列表操作

Python ValueError:太多值无法用字典解包

Python ValueError:太多值无法在While循环中解包

Python DataFrame-ValueError:太多值无法解包(预期2)

Python tuple to dict - ValueError: 太多值无法解包

Python速记太多值无法解包错误

Python列表推导“太多值无法解包”

ValueError:太多值无法用Python中的元组列表解包(预期2)

Python语法错误:ValueError:太多值无法解包(预期2)

Python(烧瓶/棉花糖)ValueError:太多值无法解包(预期2)

Python ValueError:太多值无法解包(带有嵌套变量的For循环)

python请求在数组中发送文件显示ValueError:太多值无法解包

如何在Python中修复“ ValueError:太多值以至无法解包(预期2)”

Python ValueError:太多值无法解压缩For Loop

ValueError:太多值无法在Python字典中解压缩

python ValueError:太多值无法在元组中解压缩

ValueError:太多值无法在python中解压缩

OpenCV python:solvePnP ValueError:太多值无法解压

Python ValueError 要解包的許多值

Python 2.7.1 ValueError:解包的值太多

错误:ValueError:太多值无法解包(预期3)

Django-ValueError:太多值无法解包(预期2)

带有nltk的FreqDist:ValueError:太多值无法解包

训练分类器时出现“太多值无法解包” ValueError