2

次の状態のうち、dictキーの値がどの状態にあるかを確認したいと思います。

  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))

しかし、がdictにitemToない場合item、次の行でこのエラーが発生しますif item[itemTo] == 0:

KeyError: 'whatever_value_of_itemTo'
4

1 に答える 1

7

テストの順序を変更したい:

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))
于 2012-12-04T00:14:43.397 に答える