Junior
709
¿Cuáles son las diferencias entre las funciones json.dumps y json.dump, así como json.loads y json.load?
Respuesta de la IA
sobes.tech AI
json.dumps (la s al final significa string) convierte un objeto de Python en una cadena en formato JSON.
json.dump convierte un objeto de Python en una cadena en formato JSON y la escribe en un objeto similar a un archivo (por ejemplo, un archivo) en la ruta especificada.
import json
datos = {'nombre': 'Alicia', 'edad': 30}
# json.dumps
cadena_json = json.dumps(datos, indent=4) # Convierte el objeto en una cadena
print(cadena_json)
# json.dump
with open('salida.json', 'w') as f:
json.dump(datos, f, indent=4) # Escribe el objeto en un archivo
json.loads (de nuevo, la s significa string) convierte una cadena en formato JSON de vuelta a un objeto de Python.
json.load lee datos de un objeto similar a un archivo (por ejemplo, un archivo) en formato JSON y los convierte de nuevo en un objeto de Python.
import json
cadena_json = '{"nombre": "Bob", "edad": 25}'
# json.loads
objeto_python_desde_cadena = json.loads(cadena_json) # Convierte la cadena en un objeto
print(objeto_python_desde_cadena)
# json.load
with open('entrada.json', 'r') as f:
objeto_python_desde_archivo = json.load(f) # Lee del archivo y convierte
print(objeto_python_desde_archivo)
Tabla resumen de diferencias:
| Función | Datos de entrada | Datos de salida | Propósito principal |
|---|---|---|---|
json.dumps |
Objeto de Python | Cadena (formato JSON) | Convertir un objeto en una cadena para transmisión/almacenamiento |
json.dump |
Objeto de Python | Escritura en un objeto de archivo | Convertir un objeto y escribirlo en un archivo |
json.loads |
Cadena en formato JSON | Objeto de Python | Analizar la cadena y convertirla en un objeto |
json.load |
Objeto de archivo | Objeto de Python | Leer desde un archivo y convertir en un objeto |