我在这里迷路了,Python 2.7,我有一本字典mt
,我用get()
方法,文档中说:
get(key[, default])
如果 key 位于则返回 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'
有什么想法吗?
The mt
是正常的dict
,有时没有钥匙。
所以我解决了这个问题。在这段代码到位之前,有这样一个
File "/home/ubuntu/subscription-workers/commands/dr/rebilling.py", line 48, in rebill
if mt['is_rebill'] == 1:
KeyError: 'is_rebill'
问题是存在旧版本的 .pyc 文件,但堆栈跟踪正在加载实际代码。运行后
find . -name "*.pyc" -exec rm -rf {} \;
并重新加载应用程序一切都很好,没有问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)