【Python入門】辞書

Pythonには辞書と呼ばれるデータ型があります。

辞書を作る時は、キーとその値を対にして格納します。

辞書は次のように記述します。

辞書 = { キー: 値, キー: 値, キー: 値, . . . }

辞書型のデータを作る方法

競馬の馬番と馬名を辞書型で格納してみます。

horse_racing = {1: "ダノンファンタジー", 2: "メイショウショウブ", 3: "ブランノワール", 4:"トゥーフラッシー", 5:"クロノジェネシス", 6:"ローズテソーロ"}

print(horse_racing)

結果は次のようになります。

{1: 'ダノンファンタジー', 2: 'メイショウショウブ', 3: 'ブランノワール', 4: 'トゥーフラッシー', 5: 'クロノジェネシス', 6: 'ローズテソーロ'}

辞書の値を取り出す方法

キーを指定して、値を取り出すことができます。

辞書名[ 値 ]のように指定します。

horse_racing = {1: "ダノンファンタジー", 2: "メイショウショウブ", 3: "ブランノワール", 4:"トゥーフラッシー", 5:"クロノジェネシス", 6:"ローズテソーロ"}

print(horse_racing[1])

結果は次の通りになります。

ダノンファンタジー

辞書にキーと値を追加する方法

辞書にキーと値を追加してみます。

horse_racing = {1: "ダノンファンタジー", 2: "メイショウショウブ", 3: "ブランノワール", 4:"トゥーフラッシー", 5:"クロノジェネシス", 6:"ローズテソーロ"}
horse_racing[7] = "ビーチサンバ"
print(horse_racing)

次のように追加できました。

{1: 'ダノンファンタジー', 2: 'メイショウショウブ', 3: 'ブランノワール', 4: 'トゥーフラッシー', 5: 'クロノジェネシス', 6: 'ローズテソーロ', 7: 'ビーチサンバ'}

辞書の値を削除する方法

辞書のキーと値を削除するときは、del文を使用します。

記述方法は次の通りです。

del 辞書[ キー ]

1枠目の馬情報を削除してみます。

horse_racing = {1: "ダノンファンタジー", 2: "メイショウショウブ", 3: "ブランノワール", 4:"トゥーフラッシー", 5:"クロノジェネシス", 6:"ローズテソーロ"}
del horse_racing[1]
print(horse_racing)

結果は次の通りです。1番のダノンファンタジーが削除されました。

{2: 'メイショウショウブ', 3: 'ブランノワール', 4: 'トゥーフラッシー', 5: 'クロノジェネシス', 6: 'ローズテソーロ'}

in演算子でキーの存在を確認する方法

in演算子を用いると、辞書の要素のなかに、指定したキーが存在するか調べることができます。

次のように記述します。

キー in 辞書

10枠目のデータが存在するかを確認してみます。

horse_racing = {1: "ダノンファンタジー", 2: "メイショウショウブ", 3: "ブランノワール", 4:"トゥーフラッシー", 5:"クロノジェネシス", 6:"ローズテソーロ"}
print(10 in horse_racing)

結果は次のようにFalseと表示され、10枠目の馬データが存在しないことを表します。

False

辞書内の全てのキーを取得する方法

keys( )メソッドを使用すると、辞書内の全てのキーを取得できます。

実際に記述してみましょう。

horse_racing = {1: "ダノンファンタジー", 2: "メイショウショウブ", 3: "ブランノワール", 4:"トゥーフラッシー", 5:"クロノジェネシス", 6:"ローズテソーロ"}
print(horse_racing.keys())

次のようにキーのみの結果が返ります。

dict_keys([1, 2, 3, 4, 5, 6])

辞書内の全ての値を取得する方法

values( )メソッドを使用すると、辞書内の全てのキーを取得できます。

実際に記述してみましょう。

horse_racing = {1: "ダノンファンタジー", 2: "メイショウショウブ", 3: "ブランノワール", 4:"トゥーフラッシー", 5:"クロノジェネシス", 6:"ローズテソーロ"}
print(horse_racing.values())

結果は次のようになります。

dict_values(['ダノンファンタジー', 'メイショウショウブ', 'ブランノワール', 'トゥーフラッシー', 'クロノジェネシス', 'ローズテソーロ'])

全てのキーと値を取得する方法

items( )メソッドを使用すると、辞書内の全てのキーと値のペアを取得できます。

実際に記述してみましょう。

horse_racing = {1: "ダノンファンタジー", 2: "メイショウショウブ", 3: "ブランノワール", 4:"トゥーフラッシー", 5:"クロノジェネシス", 6:"ローズテソーロ"}
print(horse_racing.items())

次のように結果が返ります。

dict_items([(1, 'ダノンファンタジー'), (2, 'メイショウショウブ'), (3, 'ブランノワール'), (4, 'トゥーフラッシー'), (5, 'クロノジェネシス'), (6, 'ローズテソーロ')])

for文を使って辞書の値を取得する方法

メソッドkeys( )、values( )、items( )は、繰り返し処理が可能です。
for文とitems( )を使って、順に取り出してみます。

for文の次の行は、インデント(字下げ)する必要があります。

horse_racing = {"1枠": "ダノンファンタジー", "2枠": "メイショウショウブ", "3枠": "ブランノワール", "4枠":"トゥーフラッシー", "5枠":"クロノジェネシス", "6枠":"ローズテソーロ"}
for waku, horse in horse_racing.items():
    print(waku + ":" + horse)

結果は次のようになります。

1枠:ダノンファンタジー
2枠:メイショウショウブ
3枠:ブランノワール
4枠:トゥーフラッシー
5枠:クロノジェネシス
6枠:ローズテソーロ

まとめ

Pythonの辞書型の使用方法について書きました。
最後までお読みいただきありがとうございました。

返信を残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください