这是一个非常简单的代码块,我不明白我在做什么错:
import sys
o_dict = {'a': 10, 'b': 0, 'c': 20}
for key, val in o_dict.iteritems():
if val < 1:
sys.exit("Key: {}, Val: {}.").format(key, val)
我希望输出是:
Key: b, Val: 0.
但是它总是:
Key: {}, Val: {}.
发生什么事了?
python大神给出的解决方案
您将format
方法放在exit
方法上,而不是在字符串上。这是您所拥有的:
sys.exit("Key: {}, Val: {}.").format(key, val)
# ^ wrong
这就是你想要的:
sys.exit("Key: {}, Val: {}.".format(key, val))
# ^ right