Python:需要超过1个值进行解包
我哪里做错了,为什么会出现这个错误呢?
replacements = {}
replacements["**"] = ("<strong>", "</strong>")
replacements["__"] = ("<em>", "</em>")
replacements["--"] = ("<blink>", "</blink>")
replacements["=="] = ("<marquee>", "</marquee>")
replacements["@@"] = ("<code>", "</code>")
for delimiter, (open_tag, close_tag) in replacements: # error here
message = self.replaceFormatting(delimiter, message, open_tag, close_tag);
错误信息:
追踪记录(最近的调用在最前面):
文件 "", 第 1 行,在 for doot, (a, b) in replacements: 值错误:需要超过 1 个值来解包
所有的值元组都有两个值,对吧?
2 个回答
3
我觉得你需要像第三个例子那样调用 .items()
,可以参考这个链接。
for delimiter, (open_tag, close_tag) in replacements.items(): # error here
message = self.replaceFormatting(delimiter, message, open_tag, close_tag)
10
应该是:
for delimiter, (open_tag, close_tag) in replacements.iteritems(): # or .items() in py3k