Pythonにおけるネストされた辞書(辞書の中に辞書)の使い方について詳しく解説します。
set型(集合型)とは
Pythonの set
型は「重複を許さないデータの集まり」を扱うための型です。
リストや辞書と違い、順序がなく、同じ値を複数入れることができないという特徴があります。
🧪 set型の主な特徴
特徴 | 説明 |
---|---|
重複なし | 同じ値は1つにまとめられる |
順序なし | インデックスでアクセスできない |
高速な検索 | in 演算子での存在確認が高速 |
集合演算ができる | 和・差・積などの演算が可能 |
以下コードのように、set
型は中括弧 {}
を使って作成します。辞書と似てますが、キーと値がありません。
# 勇者ぴこりの持ち物袋(重複禁止)
pikori_items = {"回復薬", "鉄の剣", "回復薬", "魔法の書"}
# 中身を表示
print("勇者ぴこりの持ち物:", pikori_items)
勇者ぴこりの持ち物: {‘鉄の剣’, ‘回復薬’, ‘魔法の書’}
実行結果のとおり、重複した "回復薬"
は1つにまとめられます**。また、順序は保証されないため、表示順は毎回変わることがあります
🔍 要素の追加・削除
pikori_items = {"回復薬", "鉄の剣"}
# アイテム追加
pikori_items.add("魔法の書")
# アイテム削除
pikori_items.remove("鉄の剣")
print(pikori_items)
📝 出力例:
{'魔法の書', '回復薬'}
⚔️ 集合演算(他の勇者との持ち物比較)
pikori_items = {"回復薬", "鉄の剣", "魔法の書"}
luna_items = {"回復薬", "氷の杖", "魔法の書"}
# 共通アイテム(積集合)
print(pikori_items & luna_items)
# どちらかが持っているアイテム(和集合)
print(pikori_items | luna_items)
# ぴこりだけが持っているアイテム(差集合)
print(pikori_items - luna_items)
📝 出力例:
{'回復薬', '魔法の書'}
{'鉄の剣', '氷の杖', '回復薬', '魔法の書'}
{'鉄の剣'}
🧠 よくある注意点
- 空の
set
を作るときはset()
を使う({}
は辞書になる) - 順序がないため、
set[0]
のようなアクセスはできない - リストやタプルに変換すれば順序付きで扱える
items = {"回復薬", "鉄の剣"}
print(list(items)) # → ['鉄の剣', '回復薬'](順序は不定)
🎓 まとめ
操作 | 方法 |
---|---|
定義 | set型 = {"値1", "値2"} |
追加 | .add("値") |
削除 | .remove("値") |
存在確認 | "値" in set型 |
集合演算 | & , | , - など |
このset型は、重複を排除したいときや、アイテムの比較・分類にとても便利です。
ぴこりの冒険でも、持ち物の管理やスキルの重複チェックなどに活用できますよ🧝♂️✨
次は「setとlistの変換」や「setを使ったフィルタ処理」など、実践的な応用に進めてもOKです!
関連ページ(もっと学びたい人へ)
辞書型の使い方については、以下ページで詳しく学ぶことができます。

【Python】辞書型(連想配列)の使い方を徹底解説(試験対策問題あり)
Pythonの辞書型(連想配列)の使い方について入門者向けに解説します。
Pythonの基礎から応用例まで、以下ページから学ぶことができます。

【Python超入門】基礎から応用例まで幅広く解説
Pythonの使い方について、基礎文法から応用例まで入門者向けに解説します。