Pythonの辞書のデフォルト値を設定する

Python辞書では、キーが存在しない場合、キーを使用して値を取得するとエラーが報告されることは誰もが知っています。

>>> aa={'a':1, 'b':2}
>>> aa['c']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'c'

値を取得できないときにエラーを報告せず、代わりにデフォルト値を指定すると、はるかにわかりやすくなります。

初期化中にデフォルト値を設定します(defaultdict)

>>> from collections import defaultdict
>>> aa=defaultdict(int)
>>> aa['a']=1
>>> aa['b']=2
>>> aa
defaultdict(<class 'int'>, {'a': 1, 'b': 2})
>>> aa['c']
0
>>> aa
defaultdict(<class 'int'>, {'a': 1, 'b': 2, 'c': 0})

値を取得する前にデフォルト値を設定します(setdefault(key、default)) 

>>> aa={'a':1, 'b':2}
>>> aa
{'a': 1, 'b': 2}
>>> aa.get('c')
>>> aa.setdefault('c', 'hello')
'hello'
>>> aa.get('c')
'hello'

値を取得するときにデフォルト値を設定します(dict.get(key、default))

>>> aa={'a':1, 'b':2}
>>> aa
{'a': 1, 'b': 2}
>>> aa['c']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'c'
>>> aa.get('c')
>>> aa
{'a': 1, 'b': 2}
>>> aa.get('c', 'hello')
'hello'
>>> aa.get('b')
2

 

おすすめ

転載: blog.csdn.net/TomorrowAndTuture/article/details/113121157