(Python 2.7.2)キーにマップされた値が0のときに、辞書の.get()メソッドを使用してキーを検索すると、デフォルト値が返される理由をよりよく理解したいと思います。
次のことを考慮してください
x = {1:0}
print x.get('1', 'a')
'a'
空の文字列、セットなどでも同じことが起こります。
しかし、私がそうする場合:
print x[1]
0
このメソッドは、aが発生した場合と、返される値が0または空のセットの場合の両方を.get()
返しますか?default value
keyError
dictオブジェクトが不変であり、に格納されている値をポイントすると、key = 1
Falseに等しいオブジェクトへの参照が渡されるという事実と関係がありますか?
私は自分自身のgetメソッドを書くことができることを知っています
def get(key, default=None):
try: return x[key]
except KeyError: return default
しかし、私はその方法をもっと深く理解したいと思い.get
ます。