如果字典键不存在或为零?



我想确定字典键的值处于以下哪种状态:

  1. 不存在
  2. 存在,但等于 int 为 0
  3. 存在,并且等于大于 0 的 int

这是我目前正在尝试的:

if item[itemTo] == 0:
    print("You don't have a %s." % (itemTo))
elif item[itemTo] > 0:
    print("You have %i of %s." % (item[itemTo]))
else:
    print("%s doesn't exist." % (itemTo))

但是,当itemTo不在item字典中时,我在第 if item[itemTo] == 0: 行收到此错误:

KeyError: 'whatever_value_of_itemTo'

您想要更改测试的顺序:

if itemTo not in item:
    print("%s doesn't exist." % (itemTo))
elif item[itemTo] > 0:
    print("You have %i of %s." % (item[itemTo]))
else:
    print("You don't have a %s." % (itemTo))

相关内容

最新更新