Convertir un objeto de clase de Python en JSON
Para convertir un objeto de clase de Python en una cadena JSON, o guardar los parámetros del objeto de clase en una cadena JSON, utilice el método json.dumps()
.
En este tutorial, aprenderemos a construir una cadena JSON a partir de un objeto de clase de Python.
Sintaxis de json.dumps()
La siguiente es la sintaxis de la función json.dumps()
.
jsonStr = json.dumps(miObjecto.__dict__)
donde
json
es el módulo.dumps
es el método que convierte el objeto python en una cadena JSON. Devuelve una cadena JSON.miObjecto
es el objeto de clase Python ymiObjecto.dict
obtiene la versión de diccionario de los parámetros del objeto.
Ejemplo 1: Convertir un objeto de clase Python en una cadena JSON
En este ejemplo, definiremos una clase Python, crearemos un objeto para la clase Python, y luego convertiremos sus propiedades a una cadena JSON.
import json
class Laptop:
name = 'Mi Laptop'
procesador = 'Intel Core'
#crear objeto
laptop1 = Laptop()
laptop1.name = 'Dell Alienware'
laptop1.processor = 'Intel Core i7'
#convertir en cadena JSON
jsonStr = json.dumps(laptop1.__dict__)
#imprimir la cadena json
print(jsonStr)
Salida:
{"name": "Dell Alienware", "processor": "Intel Core i7"}
Los nombres de las propiedades se convierten en claves JSON mientras que sus valores se convierten en valores JSON.
Ejemplo 2: Convertir las propiedades de un objeto de clase Python en una cadena JSON
En el siguiente ejemplo, definiremos una clase Python con diferentes tipos de datos como string
, int
y float
; crearemos un objeto para la clase Python, y luego convertiremos las propiedades del Objeto de Clase Python a una cadena JSON.
import json
class Laptop:
def __init__(self, nombre, procesador, hdd, ram, coste):
self.nombre = nombre
self.procesador = procesador
self.hdd = hdd
self.ram = ram
self.coste = coste
#crear objeto
laptop1 = Laptop('Dell Alienware', 'Intel Core i7', 512, 8, 2500.00)
#convertir en cadena JSON
jsonStr = json.dumps(laptop1.__dict__)
#imprimir la cadena json
print(jsonStr)
Salida:
{"nombre": "Dell Alienware", "procesador": "Intel Core i7", "hdd": 512, "ram": 8, "coste": 2500.0}
En este tutorial de Ejemplos de Python, aprendimos a convertir un Objeto de Clase de Python a Cadena JSON con la ayuda de Ejemplos de Python.