ホームページ >バックエンド開発 >Python チュートリアル >Python 2.x で json モジュールを使用して JSON 文字列を Python オブジェクトに変換する方法
Python 2.x で json モジュールを使用して JSON 文字列を Python オブジェクトに変換する方法
JSON (JavaScript Object Notation) は、アプリケーション プログラムからデータを転送するためによく使用される軽量のデータ交換形式です。別のアプリケーション。 Python では、json モジュールを使用して JSON データを処理できます。この記事では、json モジュールを使用して JSON 文字列を Python オブジェクトに変換する方法を説明します。
まず、json モジュールをインポートする必要があります:
import json
次に、次の JSON 文字列があると仮定します:
json_str = '{"name": "Alice", "age": 25, "city": "New York"}'
次に、この JSON 文字列を変換します。 Python オブジェクト。これを実現するには、json モジュールのloads() 関数を使用します。
python_obj = json.loads(json_str)
この方法で、json_str のデータが Python 辞書オブジェクトに変換されます。辞書キーにアクセスすることで、対応する値を取得できます。
print(python_obj["name"]) # 输出:Alice print(python_obj["age"]) # 输出:25 print(python_obj["city"]) # 输出:New York
JSON 文字列を辞書オブジェクトに変換することに加えて、json モジュールは、JSON 文字列をリストや文字列などの他の Python オブジェクトに変換することもできます。 。
JSON 文字列がリストを表す場合は、json モジュールのloads() 関数を使用して、それを Python リスト オブジェクトに変換できます。例:
json_str = '[1, 2, 3, 4, 5]' python_obj = json.loads(json_str) print(python_obj) # 输出:[1, 2, 3, 4, 5]
JSON 文字列が文字列を表す場合、json モジュールのloads() 関数を使用して、それを Python 文字列オブジェクトに変換できます。例:
json_str = '"Hello, World!"' python_obj = json.loads(json_str) print(python_obj) # 输出:Hello, World!
JSON 文字列内のキーと文字列の両方を二重引用符で囲む必要があることに注意してください。一重引用符で囲んだ場合、JSONDecodeError 例外が発生します。
さらに、JSON 文字列に浮動小数点数、ブール値、その他の型が含まれている場合、json モジュールはそれらを対応する Python オブジェクトに自動的に変換します。例:
json_str = '{"price": 9.99, "is_available": true}' python_obj = json.loads(json_str) print(python_obj["price"]) # 输出:9.99 print(python_obj["is_available"]) # 输出:True
もちろん、JSON 文字列をカスタム Python クラス オブジェクトに変換することもできます。 JSON 文字列に対応するクラスを定義し、そのクラスに from_json() メソッドを実装してオブジェクトを構築するだけです。以下は例です:
class Person(object): def __init__(self, name, age, city): self.name = name self.age = age self.city = city @classmethod def from_json(cls, json_str): python_obj = json.loads(json_str) return cls(python_obj["name"], python_obj["age"], python_obj["city"]) def __repr__(self): return "Person(name={}, age={}, city={})".format(self.name, self.age, self.city) json_str = '{"name": "Bob", "age": 30, "city": "London"}' person = Person.from_json(json_str) print(person) # 输出:Person(name=Bob, age=30, city=London)
from_json() メソッドを実装することにより、JSON 文字列を Python オブジェクトに変換するロジックをカスタマイズできます。
上記は、Python 2.x で json モジュールを使用して JSON 文字列を Python オブジェクトに変換する方法です。このようにして、JSON データを簡単に抽出して処理して、より幅広いアプリケーション シナリオに適応させることができます。
以上がPython 2.x で json モジュールを使用して JSON 文字列を Python オブジェクトに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。