Serializar datos JSON en Python

La serialización es el proceso de codificación del tipo de datos ingenuo al formato JSON. El módulo json de Python convierte un objeto de diccionario de Python en un objeto JSON, y la lista y la tupla se convierten en una array JSON, e int y float se convierten como número JSON, Ninguno se convierte como JSON nulo. 

Echemos un vistazo a cómo serializamos los datos de Python en formato JSON con estos métodos:

  • Vertedero().
  • Deshecho().

json.dump()

El método json.dump() se puede usar para escribir en un archivo JSON. Escriba datos en un objeto similar a un archivo en formato json.

Sintaxis: json.dump(dict, file_pointer)

Parámetros:

  • diccionario: nombre del diccionario que debe convertirse en objeto JSON.
  • Puntero de archivo: puntero del archivo abierto en modo escribir o agregar.

A continuación se muestra la implementación:

Convertir objeto python y escribir en archivo json.

Python3

# import module
import json
 
# Data to be written
data = {
    "user": {
        "name": "satyam kumar",
        "age": 21,
        "Place": "Patna",
        "Blood group": "O+"
    }
}
 
# Serializing json and
# Writing json file
with open( "datafile.json" , "w" ) as write:
    json.dump( data , write )

Producción:

archivo_datos.json

json.dumps()

El método json.dumps() puede convertir un objeto Python en una string JSON.

Sintaxis: json.dumps(dict)

Parámetros:

  • diccionario: nombre del diccionario que debe convertirse en objeto JSON.

A continuación se muestra la implementación:

Conversión de objeto python en string json.

Python3

# import module
import json
 
# Data to be written
data = {
    "user": {
        "name": "satyam kumar",
        "age": 21,
        "Place": "Patna",
        "Blood group": "O+"
    }
}
 
# Serializing json
res = json.dumps( data )
print( res )

Producción:

 

Publicación traducida automáticamente

Artículo escrito por kumar_satyam y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *