Python
 Computer >> コンピューター >  >> プログラミング >> Python

JSONデータをPythonのタプルに変換する方法をわかりやすく解説

PythonでJSONデータを扱う際、辞書(dict)ではなくタプルとして取得したいケースがあります。本記事では、標準ライブラリの json モジュールを使って、JSONデータをPythonのタプルに変換する手順を具体例とともに解説します。

基本的な変換の手順

JSONからタプルへの変換は、以下の2ステップで行えます。

  1. JSONを辞書に変換する:文字列の場合は json.loads()、ファイルの場合は json.load() を使用します。
  2. 辞書をタプルに変換するdict.items() でキーと値のペアを取得し、tuple() でタプル化します。

json モジュールはJSONを解析して自動的に辞書へ格納してくれるため、その後は通常の辞書と同じように値へアクセスできます。

サンプルJSONデータ

例として、次のような内容の data.json ファイルを用意します。

{
    "id": "file",
    "value": "File",
    "popup": {
        "menuitem": [
            {"value": "New", "onclick": "CreateNewDoc()"},
            {"value": "Open", "onclick": "OpenDoc()"},
            {"value": "Close", "onclick": "CloseDoc()"}
        ]
    }
}

JSONファイルを読み込んでタプルに変換するコード

このJSONファイルをPythonプログラムで読み込み、キーと値のペアをタプルとして出力するには、次のように記述します。

import json

f = open('data.json')
data = json.load(f)
f.close()

print(tuple(data.items()))

with 文を使えば、ファイルを確実に閉じる処理も簡潔に書けます。

import json

with open('data.json') as f:
    data = json.load(f)

print(tuple(data.items()))

実行結果

上記のコードを実行すると、以下のようにタプル形式で出力されます。

(('id', 'file'), ('value', 'File'), ('popup', {'menuitem': [{'value': 'New', 'onclick': 'CreateNewDoc()'}, {'value': 'Open', 'onclick': 'OpenDoc()'}, {'value': 'Close', 'onclick': 'CloseDoc()'}]}))

注意点

  • tuple(data.items()) は最上位のキーと値のみをタプル化します。ネストされた内部の辞書やリストはそのままの型で保持されます。
  • ネストされたデータまで完全にタプルへ変換したい場合は、再帰的な変換関数を自作する必要があります。
  • JSON文字列が直接ソースコード内にある場合は、json.load(f) の代わりに json.loads(文字列) を使用してください。

このように、json モジュールと items() メソッドを組み合わせるだけで、JSONデータを簡単にタプルへ変換できます。用途に応じて辞書とタプルを使い分けましょう。

  1. Pythonで文字列をJSONに変換する方法|json.loads()の使い方を解説

    PythonでJSON文字列を辞書(dict)に変換する基本Pythonでは、標準ライブラリの json モジュールを使うことで、JSON形式の文字列を簡単に扱うことができます。文字列として渡されたJSONデータをPythonの辞書型に変換するには、json.loads() メソッドを使用します。json.loads() は、有効なJSON文字列を受け取り、それを解析して辞書オブジェクトを返します。返された辞書には、すべての要素にキーを使ってアクセスできます。json.loads()の使用例>>> import json >>> s = {success:

  2. JSONをExcelに変換する方法!Power Queryとオンラインツールの使い方を徹底解説

    JSON(JavaScript Object Notation)は、さまざまな種類のデータを保存するために広く利用されているデータ形式です。データの保存だけでなく、2つのサーバー間でデータをやり取りする際にも活用されており、APIなどを通じてWebサーバーと通信する場面でよく目にします。JSONファイルの構造は非常にシンプルで、配列とオブジェクトで構成されています。典型的なJSONファイルでは、キーと値のペアが配列内の各オブジェクトに格納されており、インデックスとキーを指定することで目的のデータにアクセスできます。プログラマーや開発者にとってJSONの構造はごく基本的なものですが、一般ユーザー