キー(key)と値(value)を組み合わせたマッピングオブジェクトである辞書(dict型)の使い方について説明する
1. 辞書の生成
辞書の構造は組となるキー(key)と値(value)をコロン:で区切り、組をカンマ,で区切る。全体を波かっこ{}で囲う。
府県名をキー、人口(万人)をオブジェクトとした例。
population = {'大坂': 882, '兵庫': 546, '京都': 261} print(population)
実行結果
{'大坂': 882, '兵庫': 546, '京都': 261}
dictを使っても辞書の生成が可能。
population = dict(大坂 = 882, 兵庫 = 546, 京都 = 261) print(population)
実行結果
{'大坂': 882, '兵庫': 546, '京都': 261}
dictとzipを使うことで、キーのリストと値のリストから辞書を生成することが可能。
population = dict(zip(['大坂', '兵庫', '京都'], [882, 546, 261])) print(population)
実行結果
{'大坂': 882, '兵庫': 546, '京都': 261}
2. キーの指定による値の取り出し
インデックスとしてキーを与えることで、対応する値を取得できる。
population = {'大坂': 882, '兵庫': 546, '京都': 261} print(population['京都'])
実行結果
261
存在しないキーを指定するとエラーとなる。
population = {'大坂': 882, '兵庫': 546, '京都': 261} print(population['奈良'])
実行結果
KeyError: '奈良'
getでキーを与えて値を得ることもできる。
population = {'大坂': 882, '兵庫': 546, '京都': 261} print(population.get('京都'))
実行結果
261
getの場合存在しないキーを与えてもエラーとならない(何も返さない)。
population = {'大坂': 882, '兵庫': 546, '京都': 261} print(population.get('奈良'))
実行結果
None
getの2つ目の引数にキーが存在しない場合の応答を記載しておくことが可能。
population = dict(zip(['大坂', '兵庫', '京都'], [882, 546, 261])) print(population.get('奈良','キーが見つからない'))
実行結果
キーが見つからない
3. 値の変更
辞書の特定のキーを指定し、値を変更することができる。
population = dict(zip(['大坂', '兵庫', '京都'], [882, 546, 261])) population['京都'] = 200 population
実行結果
{'大坂': 882, '兵庫': 546, '京都': 200}
4. 値の追加
新たなキーを指定し値を与えることで、辞書にキー・値を追加できる。
population = dict(zip(['大坂', '兵庫', '京都'], [882, 546, 261])) population['奈良'] = 135 print(population)
実行結果
{'大坂': 882, '兵庫': 546, '京都': 261, '奈良': 135}
5. リファレンス
Python 標準ライブラリ > マッピング型 --- dict
使用バージョン:Python 3.7.0
0 件のコメント:
コメントを投稿