【Python入門】dictionary(辞書)とは?

辞書型とは

辞書型(ディクショナリー型)とは、KeyとValueという2つの値をペアで保持するデータ型です。
以下は、辞書型の構文になります。

辞書名 = {"キー" : "値", ・・・}

辞書型は{}を使い囲うことで作成します。

辞書型にはリスト型とは異なり、インデックス0から値が割り当てられていません。
そのため、リストはインデックス番号で値にアクセスできるのに対し、辞書型では任意のキー文字列で値にアクセスすることができます。以下は辞書型のサンプルプログラムです。

profile = {"name": "aiacademy", "email": "test@aiacademy.jp" }
print(profile["name"]) # aiacademy

出力結果

aiacademy

辞書型に要素を追加する

辞書型の場合に要素を追加するには、追加時に[]を使用することで特定のキーにアクセスする事ができます。そのため下記のプログラム5行目のような記述を行うことで要素を追加できます。

profile = {"name": "tanaka", "email": "test@aiacademy.jp" }
print(profile["name"]) # tanaka

# 新しく要素を追加
profile["gender"] = "male"

# 新しく要素を追加した辞書型(profile)を出力
print(profile)

ここでおさらいですが、数学の=と異なり、プログラミングの=は代入を意味します。つまりprofile["gender"] = "male"は辞書profilegenderというキーにmaleという値(文字列)を追加するという意味になります。補足ですが、リスト型のappendと似たような方法で、辞書型にはupdateというものがあります。使い方は以下のようになります。

profile.update({"gender": "male"})

辞書に値を追加する際に=を使うかupdateのどちらを使うですが、=の場合は、実行速度が高速であり、update=に比べ実行速度は劣るが、視認性が良いという違いがあります。ただし、=は実行速度が速いとはいえ、updateも普通に使う上では十分に高速であるため、差が出るとすれば、TB級のビッグデータを扱う場合などの為、基本的には好みで使い分けて問題ありません。

Pythonを効率よく学ぶには?

Pythonを効率よく学ぶには、普段からPythonを利用している現役のデータサイエンティストや機械学習エンジニアに質問できる環境で学ぶことです。
質問し放題かつ、体系的に学べる動画コンテンツでデータ分析技術を学びたい方は、オンラインで好きな時間に勉強できるAI Academy Bootcampがオススメです。受講料も業界最安値の35,000円(6ヶ月間質問し放題+オリジナルの動画コンテンツ、テキストコンテンツの利用可能)なので、是非ご活用ください。