以前の記事では、複数のデータを順番にまとめて管理できる「リスト」について解説しました。今回は、リストと並んでよく使われる便利なデータ型である「辞書(dictionary)」について学んでいきましょう。

辞書とは

リストがデータを「順番(インデックス)」で管理していたのに対し、辞書は「キー(Key)」と「値(Value)」をペアにしてデータを管理します。
本物の辞書で「単語(キー)」を引くとその「意味(値)」が載っているのと同じように、Pythonの辞書も「キー」を指定することで、それに対応する「値」を取り出すことができます。

例えば、「リンゴの値段は100円」「バナナの値段は150円」のように、何かの名前とそれに関連するデータをセットで扱いたい時に非常に便利です。

辞書を定義する

Pythonで辞書を定義するには、変数名、イコール「=」、波括弧「{}」を使います。波括弧の中に、データを「キー:値」という形式で記述します。複数のデータを定義する場合は、それぞれのペアをカンマ「,」で区切ります。

なので例として辞書の定義は、

変数名 = {キー1:値1, キー2:値2, ...}

の形式で書くことで定義できます。キーには主に文字列や数値を使い、値にはどんなデータ型でも入れることができます。

では、実際にやってみましょう。

#辞書の定義
fruits_price = {
    "apple": 100,
    "banana": 150,
    "orange": 200
}

#辞書の中身を表示
print(fruits_price)

とセルに入力して実行してみましょう。すると結果は

{‘apple’: 100, ‘banana’: 150, ‘orange’: 200}

と表示されます。これは最初に「fruits_prcie」という変数に3つの要素がある辞書を代入し、その後出力しています。このように、果物の名前(キー)とその値段(値)がペアになって保存されていることがわかります。

辞書の要素にアクセスする

辞書から特定の値を取り出したい場合は、リストのインデックスの代わりに、角括弧「[]」の中にキーを指定します。

では、実際にやってみましょう。

#辞書の定義
fruits_price = {
    "apple": 100,
    "banana": 150,
    "orange": 200
}

#"apple"というキーに対応する値を取り出す
print(fruits_price["apple"])

#"orange"というキーに対応する値を取り出す
print(fruits_price["orange"])

とセルに入力し実行してみましょう。すると結果は

100
200

と表示されます。これは最初に変数「fruits_price」に辞書を定義して代入し、次で辞書のキーに対応している値を表示させました。今回は変数「fruits_price」に代入された辞書のキー”apple”と”orange”に対応した値を表示させたので、100と200が出力されました。

辞書に要素を追加・変更する

辞書は定義した後からでも、新しいデータを追加したり、既存のデータを変更したりできます。

要素の追加

新しいキーを指定して値を代入すると、そのペアが辞書に追加されます。
では、実際にやってみましょう。

#辞書の定義
fruits_price = {
    "apple": 100,
    "banana": 150,
    "orange": 200
}

print(fruits_price)

#新しい商品"grape"とその値段を追加
fruits_price["grape"] = 300

print(fruits_price)

とセルに入力し実行してみましょう。すると結果は

{‘apple’: 100, ‘banana’: 150, ‘orange’: 200}
{‘apple’: 100, ‘banana’: 150, ‘orange’: 200, ‘grape’: 300}

と表示されます。まずは最初に定義した辞書を出力して表示させ、次にキーが”grape”、値が300の要素を追加する処理をしました。そして追加後の辞書を出力したので、辞書には最初に定義したときとは違いキーが”grape”、値は300の要素が追加された辞書が出力されました。

要素の変更

すでに存在するキーを指定して新しい値を代入すると、そのキーに対応する値が上書きされます。
では実際にやってみましょう。

#辞書の定義
fruits_price = {
    "apple": 100,
    "banana": 150,
    "orange": 200
}

print(fruits_price)

#"banana"の値段を変更
fruits_price["banana"] = 100

print(fruits_price)

とセルに入力して実行してみましょう。すると結果は

{‘apple’: 100, ‘banana’: 150, ‘orange’: 200}
{‘apple’: 100, ‘banana’: 100, ‘orange’: 200}

と表示されます。”banana”の値が150から100に変更されたのが確認できます。

まとめ

今回は、キーと値をペアで管理する「辞書」について解説しました。
・辞書は{キー:値}の形で定義する。
・値を取り出すときは辞書名[キー]と指定する。
・新しいキーを指定して代入すれば追加、既存のキーなら変更になる。

リストと同じくらい頻繁に使う機能なので、ぜひ使ってみていろいろと試してみてください。

open-in-colab

今回はこれで終了です。今回のサンプルを用意したので、もし必要な場合は上の「Open in Colab」と書いてあるボタンをクリックしてください。なおそのままだと編集不可なので編集をしたい場合は「ドライブにコピー」をクリックしてコピーしてください。
なおGoogleColaboratoryについてわからなかったらGoogleColaboratoryを使ってみよう_導入編をご覧ください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA