保存した JSON データを読み込んでから、特定の条件に合うデータだけを抽出(フィルタリング)する方法を紹介します。これにより「必要なデータだけを取り出す」ことができます。
サンプルコード
import json
# --- JSONファイルを読み込む ---
with open("results.json", "r", encoding="utf-8") as f:
data = json.load(f)
# --- フィルタリング処理 ---
# 例: result が 40以上 のデータだけを抽出
filtered = []
for category, items in data.items():
for item in items:
if item["result"] >= 40:
filtered.append(item)
# --- 結果を表示 ---
print("=== フィルタリング結果 ===")
for item in filtered:
print(item)
Python実行結果(抜粋)
=== フィルタリング結果 ===
{'A': 3, 'B': 3, 'C': 5, 'result': 45}
{'A': 5, 'B': 3, 'C': 3, 'result': 45}
{'A': 5, 'B': 5, 'C': 3, 'result': 75}
{'A': 5, 'B': 3, 'C': 5, 'result': 75}
...
解説ポイント
json.load(f)→ JSONファイルを Python の辞書に変換。- ループで走査 →
for category, items in data.items():でカテゴリごとに取り出す。 - 条件判定 →
if item["result"] >= 40:のように条件を指定。 - 抽出結果をリスト化 →
filtered.append(item)で条件一致データを集める。
応用の場面
- 検索機能: 保存したデータから条件に合うものだけを取り出す。
- ログ分析: 大きな値や特定のエラーコードだけを抽出。
- データ処理: JSONをフィルタリングして別の処理に渡す。
まとめ
- JSONを読み込んだら 辞書やリストとして扱える。
- 条件を指定してフィルタリングすれば 必要なデータだけ抽出可能。
- 抽出結果を新しいリストにまとめると、後で再利用しやすい。

