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

PythonオブジェクトをJSONオブジェクトに変換する方法をわかりやすく解説

Pythonでデータを扱う際、オブジェクトをJSON形式に変換したい場面はよくあります。例えば、Web APIとの通信や設定ファイルの保存などがその代表例です。

json.dumps()メソッドを使った基本的な変換方法

Pythonには標準ライブラリとしてjsonモジュールが用意されており、これをインポートするだけで簡単に変換処理が行えます。オブジェクトをJSON形式の文字列に変換するには、json.dumps()メソッドを使用します。

以下は、リストオブジェクト a = [1, 2, 3] をJSONオブジェクトに変換する具体例です。

>>> a = [1, 2, 3]
>>> import json
>>> json.dumps(a)
'[1, 2, 3]'

このように、json.dumps()を実行すると、Pythonのリストが文字列 '[1, 2, 3]' というJSON形式に変換されました。

他のデータ型も変換できる

json.dumps()はリスト以外にも、辞書(dict)、タプル、数値、文字列、真偽値などの一般的なPythonオブジェクトを変換できます。

>>> data = {'name': '太郎', 'age': 25}
>>> json.dumps(data)
'{"name": "\\u592a\\u90ce", "age": 25}'
>>> json.dumps(data, ensure_ascii=False)
'{"name": "太郎", "age": 25}'

日本語などのマルチバイト文字をそのまま出力したい場合は、引数に ensure_ascii=False を指定すると便利です。

ファイルに保存する場合はjson.dump()を使う

変換結果をファイルとして保存したい場合は、文字列ではなく直接ファイルに書き込む json.dump() メソッドを使用します。

import json

with open('data.json', 'w', encoding='utf-8') as f:
    json.dump([1, 2, 3], f)

まとめ

PythonオブジェクトをJSONに変換する際は、標準ライブラリのjsonモジュールを使います。文字列として取得したい場合は json.dumps()、ファイルに保存したい場合は json.dump() を使い分けるとよいでしょう。API通信やデータの永続化など、さまざまな場面で活用できる基本テクニックです。

  1. Pythonの辞書をJSON形式で出力・表示する方法

    JSONとはJSON(JavaScript Object Notation)は、データをテキスト形式で表現するための軽量なデータ交換フォーマットです。Web APIや設定ファイルなど、さまざまな場面で広く利用されています。jsonモジュールとdumps()関数Pythonには標準ライブラリとしてjsonモジュールが用意されており、JSONデータのエンコード(書き出し)とデコード(読み込み)を簡単に行うことができます。このモジュールのdumps()関数を使用すると、Pythonの辞書オブジェクトをそのままJSON形式の文字列に変換できます。基本的な使い方D1={pen:25, pencil:10

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

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