【发布时间】:2017-05-23 13:16:30
【问题描述】:
我在这里迷路了,Python 2.7,我有一个字典 mt,我使用 get() 方法,文档中说:
get(key[, default])如果 key 在 字典,否则默认。如果没有给出默认值,则默认为 无,因此此方法永远不会引发KeyError。
但我还是得到了
File "/home/ubuntu/subscription-workers/commands/dr/rebilling.py", line 48, in rebill
if mt.get('is_rebill', 0) == 1:
KeyError: 'is_rebill'
有什么想法吗?
mt 是普通的dict,有时没有密钥。
【问题讨论】:
-
你能告诉我们山的样子吗
-
该语法没有错误,您应该像@TimCastelijns 所说的那样显示您的
mtdict,但您的dict 中似乎没有一个名为“is_rebill”的键 -
没关系,使用
get()时不应该引发KeyError -
它在 python2.7 中为我工作并且没有提高任何
KeyError。 -
mt不是dict。使用print type(mt))并检查输出。
标签: python python-2.7 dictionary