Comment utiliser le module json dans Python 2.x pour convertir des chaînes JSON en objets Python
JSON (JavaScript Object Notation) est un format d'échange de données léger couramment utilisé pour transférer des données d'une application à un autre programme. En Python, vous pouvez utiliser le module json pour traiter les données JSON. Cet article montrera comment utiliser le module json pour convertir une chaîne JSON en un objet Python.
Tout d'abord, nous devons importer le module json :
import json
Ensuite, supposons que nous ayons la chaîne JSON suivante :
json_str = '{"name": "Alice", "age": 25, "city": "New York"}'
Maintenant, nous voulons convertir cette chaîne JSON en un objet Python. Vous pouvez utiliser la fonctionloads() du module json pour y parvenir :
python_obj = json.loads(json_str)
De cette façon, les données de json_str sont converties en un objet dictionnaire Python. Nous pouvons obtenir la valeur correspondante en accédant à la clé du dictionnaire :
print(python_obj["name"]) # 输出:Alice print(python_obj["age"]) # 输出:25 print(python_obj["city"]) # 输出:New York
En plus de convertir les chaînes JSON en objets dictionnaire, le module json peut également convertir les chaînes JSON en d'autres objets Python, tels que des listes, des chaînes, etc.
Si la chaîne JSON représente une liste, vous pouvez utiliser la fonctionloads() du module json pour la convertir en un objet liste Python. Par exemple :
json_str = '[1, 2, 3, 4, 5]' python_obj = json.loads(json_str) print(python_obj) # 输出:[1, 2, 3, 4, 5]
Si la chaîne JSON représente une chaîne, vous pouvez utiliser la fonctionloads() du module json pour la convertir en un objet chaîne Python. Par exemple :
json_str = '"Hello, World!"' python_obj = json.loads(json_str) print(python_obj) # 输出:Hello, World!
Il convient de noter que la clé et la chaîne de la chaîne JSON doivent être placées entre guillemets doubles. Si elle est placée entre guillemets simples, une exception JSONDecodeError se produira.
De plus, si la chaîne JSON contient des nombres à virgule flottante, des valeurs booléennes et d'autres types, le module json les convertira automatiquement en objets Python correspondants. Par exemple :
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
Bien sûr, nous pouvons également convertir la chaîne JSON en un objet de classe Python personnalisé. Définissez simplement une classe correspondant à une chaîne JSON et implémentez la méthode from_json() dans la classe pour construire l'objet. Voici un exemple :
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)
En implémentant la méthode from_json(), nous pouvons personnaliser la logique de conversion des chaînes JSON en objets Python.
Ce qui précède explique comment utiliser le module json pour convertir des chaînes JSON en objets Python dans Python 2.x. De cette manière, nous pouvons facilement extraire et traiter les données JSON pour les adapter à un plus large éventail de scénarios d'application.
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!