コース一覧
    Pythonコレクション
    辞書の基本

    Pythonコレクション

    リスト、辞書、集合、タプルなどのコレクションを学び、複数のデータを適切に扱えるようにします。

    1
    リストと辞書
    01. リストの追加と削除15分
    02. スライス15分
    03. 辞書の基本15分
    04. 辞書を走査15分
    05. keyでソート15分
    06. setで重複除去15分
    07. リスト内包表記15分
    08. タプルアンパック15分
    09. つくる:カテゴリ別集計15分
    10. 第7章クイズ10分

    辞書の基本

    辞書のキー検索

    [1] が金額なのかカテゴリなのか分からない

    支出 1 件は、品名と金額とカテゴリの 3 つでできています。これをリストで持つと ["りんご", 120, "食費"] になりますが、あとから読んだときに [1] が何を指すのか分かりません。番号は意味を運んでくれないからです。

    値に 名前 を付けてしまえば解決します。それが 辞書 です。

    Python

    record = {"name": "りんご", "price": 120, "category": "食費"}
    print(record["name"])
    print(record["price"])

    りんご と 120 が出ます。波かっこ {} で囲み、キー: 値 の組をカンマで並べます。左を キー、右を 値 と呼びます。

    取り出すときは record["price"] のように角かっこにキーを書きます。番号を覚える必要がなく、読んだ瞬間に何の値か分かります。キーは文字列にするのが基本で、クオートで囲みます。値の型は自由で、上の例では金額だけが int です。

    あとから 1 項目だけ足したい

    最初から全部そろっているとは限りません。辞書は作ったあとでも項目を足せます。

    Python

    memo = {}
    memo["title"] = "買い物メモ"
    memo["done"] = False
    memo["done"] = True

    無いキーに代入すると 追加、すでにあるキーに代入すると 上書き です。同じ書き方で両方が起きます。最後の行で done は True になり、False は残りません。辞書は同じキーを 2 つ持てないからです。エラーにはならず静かに上書きされるので、気づきにくい落とし穴です。

    値のところには変数もそのまま書けます。

    Python

    title = "ノート"
    memo = {"title": title}

    左の "title" はクオート付きの名札、右の title は変数です。同じつづりでも役割が違うので、慣れるまでは見比べて確認します。

    空の辞書は {} と書きます。空のリスト [] と見た目が近いので、取り違えないようにします。

    やってみよう

    関数 make_record(name, price, category) を実装してください。3 つの引数から {"name": 品名, "price": 金額, "category": カテゴリ} という辞書を作って return します。

    条件が 1 つあります。category が空文字 "" のときは、代わりに "その他" を入れてください。未入力を既定値で埋める、第 4 章と同じ考え方を辞書の中でやる形です。キーの並びは name、price、category の順にします。

    要件

    1. 関数名は make_record で、引数は name と price と category の3つ
    2. キーは name と price と category の3つを持つ辞書を return する
    3. category が空文字のときは値を "その他" にする
    4. キーの並びは name、price、category の順にする

    ヒント

    辞書は {"キー": 値, "キー": 値} の形で書きます

    キーはクオートで囲んだ文字列、値は引数の変数です

    空文字の判定は if category == "": と書けます

    波かっこ {} を使います。角かっこ [] はリストです

    生田 陸人
    監修生田 陸人
    ゆめさくエンジニア / 現役ソフトウェアエンジニア監修者プロフィールを見る →
    編集 ゆめさく編集部·公開 2026/08/05·更新 2026/08/26

    関連レッスン

    • 辞書を走査

      items() でキーと値を同時に取り出し、1件の支出を行の形に整形する

    • keyでソート

      sorted の key に lambda を渡して、支出を金額の高い順に並べ替える

    • setで重複除去

      set で重複を消し、sorted で並びを固定して使ったカテゴリ一覧を作る

    • リスト内包表記

      for と if を1行に畳むリスト内包表記で、食費の支出だけを抜き出す

    このレッスンに出てくる用語

    意味があいまいなまま進んだ語は、ここから読み直せます。

    • リスト順序付きで複数の値を扱うデータ構造
    • 変数データに名前をつけて参照する仕組み
    • 関数処理に名前を付けて再利用できる単位
    • 引数位置引数=順番で渡す。
    main.py
    エディタを読み込んでいます

    メモ

    辞書の基本

    ⌘S で保存