Comment convertir des données JSON en objets Python ?

Barbara Streisand
Libérer: 2024-11-09 01:51:02
original
707 Les gens l'ont consulté

How to Convert JSON Data into Python Objects?

Conversion de données JSON en objets Python

Travailler avec des données JSON est une tâche courante dans le développement Web. Pour utiliser efficacement les données JSON dans vos applications Python, il est souvent nécessaire de les convertir en objets Python. Dans cet article, nous montrerons comment réaliser cette conversion.

Votre vue Django actuelle est une approche de base pour gérer des objets JSON simples. Cependant, pour les structures de données JSON complexes, une approche plus structurée est souhaitable. La conversion de JSON en objets Python permet une manipulation et un stockage plus faciles dans votre base de données.

Avec Python 3, vous pouvez réaliser cette conversion en une seule ligne :

import json
from types import SimpleNamespace

json_data = '{"name": "John Smith", "hometown": {"name": "New York", "id": 123}}'

# Convert JSON into a Python object with attributes corresponding to dict keys
obj = json.loads(json_data, object_hook=lambda d: SimpleNamespace(**d))

print(obj.name)  # John Smith
print(obj.hometown.name)  # New York
print(obj.hometown.id)  # 123
Copier après la connexion

Dans Python 2, la conversion Le processus est légèrement différent :

import json
from collections import namedtuple

json_data = '{"name": "John Smith", "hometown": {"name": "New York", "id": 123}}'

# Convert JSON into a namedtuple object
obj = json.loads(json_data, object_hook=lambda d: namedtuple('Person', d.keys())(*d.values()))

print(obj.name)  # John Smith
print(obj.hometown.name)  # New York
print(obj.hometown.id)  # 123
Copier après la connexion

En utilisant ces techniques, vous pouvez convertir de manière transparente les données JSON en objets Python, permettant ainsi une manipulation et un stockage efficaces des données dans vos applications.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal