嫁ちゃん
辞書のキーと値の存在チェックとは、辞書に載っているかどうか確認するという感じですか?便利なような、回りくどいような。。。
わたし
索引のラベルが付いているかどうか確かめる感じかな。
値までチェックできるなんてコンピュータのらしい機能だね。
値までチェックできるなんてコンピュータのらしい機能だね。
目次
辞書とは?
辞書は他の言語にも “連想記憶 (associated memory)” や “連想配列 (associative array)” という名前で存在することがあります。ある範囲の数でインデクス化されているシーケンスと異なり、辞書は キー (key) でインデクス化されています。このキーは何らかの変更不能な型になります。文字列、数値は常にキーにすることができます。タプルは、文字列、数値、その他のタプルのみを含む場合はキーにすることができます。
5.5. 辞書型 (dictionary) – Python3.8.1 ドキュメント
こちらも合わせてご覧ください
辞書の要素を検索
辞書のキー 存在チェック
dic = {'key1': 1, 'key2': 2, 'key3': 3}
print ( 'key2' in dic )
print ( 'key99' in dic )
print ( 'key2' in dic.keys() )
print ( 'key99' in dic.keys() )
keys
関数は省略して記述することができます。
True
False
True
False
辞書の値 存在チェック
dic = {'key1': 1, 'key2': 2, 'key3': 3}
print ( 2 in dic.values() )
print ( 99 in dic.values() )
True
False
辞書のキーと値 存在チェック
dic = {'key1': 1, 'key2': 2, 'key3': 3}
print ( ( 'key2, 2 ) in dic.items() )
print ( ( 'key99, 3 ) in dic.items() )
True
False
辞書の値を取得
辞書のキーを指定して値を取得
dic = {'key1': 1, 'key2': 2, 'key3': 3}
print ( dic['key2'] )
print ( dic['key99'] )
キーが存在しない場合 KeyError
となります。
2
KeyError: 'key99'
get 関数を使用して辞書の値を取得
dic = {'key1': 1, 'key2': 2, 'key3': 3}
print dic.get('key2')
print dic.get('key99' )
print dic.get('key99', 'nothing')
キーが存在しない場合 KeyError
は発生しません。'none'
が返されます。また、初期値を指定しておくことで、キーが存在しない場合の戻り値とすることができます。
2
none
nothing
嫁ちゃん
本物の辞書なら探すのが大変な作業もコンピュータならあっという間!
わたし
そうだねー。
もう、わたし、老眼なので、本物の辞書を見るのもいやだわ😁
[A8_TechAcademy065]
[Footer]