JavaScriptのオブジェクトをPythonの辞書に変換する方法を解説
PythonとJavaScriptでは、辞書(連想配列)の内部的な表現方法が異なります。そのため、両者間でデータを受け渡す際には、何らかの中間表現が必要になります。最も広く使われている中間表現がJSONです。JSONはシンプルかつ軽量なデータ交換フォーマットで、言語に依存しないため、PythonとJavaScriptの橋渡しに最適です。
Python側:json.dumps() で辞書をJSON文字列に変換する
Pythonのjson.dumps()関数を使うと、辞書(dict)をJSON形式の文字列に変換できます。
import json
my_dict = {
'foo': 42,
'bar': {
'baz': "Hello",
'poo': 124.2
}
}
my_json = json.dumps(my_dict)
print(my_json)出力結果
'{"foo": 42, "bar": {"baz": "Hello", "poo": 124.2}}'このように、ネストされた辞書も問題なくJSON文字列へ変換されます。
Python側:json.loads() でJSON文字列を辞書に戻す
逆に、受け取ったJSON文字列をPythonの辞書に変換するには、json.loads()関数を使用します。
import json
my_str = '{"foo": 42, "bar": {"baz": "Hello", "poo": 124.2}}'
my_dict = json.loads(my_str)
print(my_dict['bar']['baz'])出力結果
Hello
変換後は通常の辞書として扱えるため、キーを指定して値にアクセスできます。
JavaScript側での扱い
JavaScript側では特別な処理はほとんど不要です。というのも、JSONは「JavaScript Object Notation」の略であり、JavaScriptのオブジェクト記法そのものだからです。多くの場合、JSはJSONから暗黙的にオブジェクトを構築します。
ただし、データが文字列として受け取られた場合は、JSON.parse()を使ってオブジェクトに変換しましょう。
const obj = JSON.parse('{"foo": 42, "bar": {"baz": "Hello", "poo": 124.2}}');
console.log(obj.bar.baz); // Helloまとめ
- Python → JavaScript:
json.dumps()で辞書をJSON文字列化して送信 - JavaScript → Python:文字列なら
JSON.parse()でオブジェクト化し、Python側ではjson.loads()で辞書に変換 - JSONは軽量で汎用的なため、異なる言語間のデータ交換における標準的な中間フォーマットとして最適
-
JSONテキストをJavaScriptのJSONオブジェクトに変換する方法を解説
JavaScriptでは、JSON.parse()メソッドを使用することで、JSON形式のテキスト文字列をJavaScriptオブジェクトへと変換できます。このメソッドは、APIから取得したデータやサーバーとの通信で受け取ったJSON文字列を、プログラム内で扱いやすいオブジェクトにパースする際に非常に重要な役割を果たします。 以下は、JSONテキストをJavaScriptオブジェクトに変換する具体的なコード例です。 サンプルコード <!DOCTYPE html> <html lang=ja> <head> <meta charset=UTF-8 /&
-
JavaScriptで辞書(連想配列)をオブジェクトのリストに変換する方法
JavaScriptでは、キーと値のペアを持つ「辞書」のようなオブジェクトを、Object.values()メソッドを使うことで簡単にオブジェクトの配列(リスト)へ変換できます。以下に具体的なサンプルコードを示します。 サンプルコード <!DOCTYPE html> <html lang=ja> <head> <meta charset=UTF-8 /> <meta name=viewport content=width=device-width, initial-scale=1.0 /> <title>Document&