まず結論

辞書は、キーと値をセットで持つデータです。

user = {
    "name": "モコ",
    "age": 3
}

この例では、"name" というキーに "モコ""age" というキーに 3 が入っています。

こんなときに読む記事です

次のようなところで止まった人向けです。

  • {} の書き方が分からない
  • リストと辞書の違いが分からない
  • user["name"] の読み方が分からない

辞書は、番号ではなく名前で値を取り出したいときに便利です。

キーで値を取り出す

辞書から値を取り出すときは、キーを使います。

user = {"name": "モコ", "age": 3}

print(user["name"])
print(user["age"])

user["name"] は「user の中から name の値を取り出す」と読めます。

値を追加する

あとから新しいキーと値を追加できます。

user = {"name": "モコ"}
user["level"] = 5

print(user)

"level" というキーに 5 が追加されます。

値を変更する

すでにあるキーに代入すると、値を変更できます。

user = {"name": "モコ", "level": 1}
user["level"] = 2

print(user["level"])

この場合、level2 になります。

リストとの違い

リストは順番で取り出します。

names = ["モコ", "ソラ"]
print(names[0])

辞書はキーで取り出します。

user = {"name": "モコ"}
print(user["name"])

順番よりも「名前」「年齢」「点数」のような意味で取り出したいなら、辞書が向いています。

よくあるエラー

存在しないキーを指定するとエラーになります。

user = {"name": "モコ"}
print(user["age"])

"age" が辞書にないためです。
キーがあるか分からないときは、あとで get() という書き方も使えます。