10.6. Módulo json¶
Nota
Propósito: usar el módulo que incorpora Python para codificar y decodificar JavaScript Object Notation (JSON).
El módulo json expone una API familiar a los usuarios de los módulos de la biblioteca estándar marshal y pickle. Este le permite codificar objetos de Python como cadenas en formato JSON y decodifiquelas en objetos de Python.
Además proporciona una API similar al módulo pickle para convertir objetos de Python en memoria a una representación serializada conocida como JavaScript Object Notation (JSON).
10.6.1. Práctica - Caso real¶
A continuación se presenta una práctica más real de implementar el uso de proyectos
con el módulo json para leer y escribir un archivo JSON basado en un tipo diccionario:
10.6.2. Estructura de archivos¶
Para crear la estructura de archivos del proyecto JSON debe ejecutar los siguientes comandos:
Crear y acceder al directorio json en un solo comando, ejecutando el siguiente comando:
mkdir -p ~/proyectos/json && cd $_
El comando anterior crea la siguiente estructura de directorios:
proyectos/
└── json/
Si tiene la estructura de archivo previa, entonces puede continuar con la siguiente sección.
Debe crear el directorio json, ejecutando el siguiente comando:
md .\proyectos\json
Debe acceder al directorio , ejecutando el siguiente comando:
cd .\proyectos\json
El comando anterior crea la siguiente estructura de directorios:
proyectos/
└── json/
Si tiene la estructura de archivo previa, entonces puede continuar con la siguiente sección.
A continuación se presenta y explica el uso de cada archivo para este proyecto:
Archivo json_reading_writing.py
Módulo de principal del programa.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | |
Importante
Usted puede descargar el código usado en esta sección haciendo clic en el siguiente enlace:
Truco
Para ejecutar el código json_reading_writing.py, abra una consola de comando,
acceda al directorio donde se encuentra el programa:
proyectos/
└── json/
└── json_reading_writing.py
Si tiene la estructura de archivo previa, entonces ejecute el siguiente comando:
python3 json_reading_writing.py
El anterior código al ejecutar debe mostrar el siguiente mensaje:
INFO:root:✅ Se escribió el archivo JSON 'clientes.json'.
📜 Nombre: Leonardo
📜 Apellido: Caballero
📜 Código postal: 5001
📜 Teléfono: +58-412-4734567
📜 Datos detallados: {'nombre': 'Leonardo', 'apellido': 'Caballero', 'codigo_postal': '5001', 'telefono': '+58-412-4734567'}
📜 Nombre: Ana
📜 Apellido: Poleo
📜 Código postal: 6302
📜 Teléfono: +58-426-5831297
📜 Datos detallados: {'nombre': 'Ana', 'apellido': 'Poleo', 'codigo_postal': '6302', 'telefono': '+58-426-5831297'}
📜 Nombre: Manuel
📜 Apellido: Matos
📜 Código postal: 4001
📜 Teléfono: +58-414-2360943
📜 Datos detallados: {'nombre': 'Manuel', 'apellido': 'Matos', 'codigo_postal': '4001', 'telefono': '+58-414-2360943'}
INFO:root:✅ Se leyó el archivo JSON 'clientes.json'.
La ejecucion anterior generar la siguiente estructura:
proyectos/
└── json/
├── clientes.json
└── json_reading_writing.py
Archivo clientes.json
Archivo en formato JSON llamado clientes.json
la cual no se incluye ya que cada vez que se inicia el programa json_reading_writing.py se sustituye y crea
nuevamente, para cuidar la creación de los datos iniciales.
Así de esta forma puede leer y escribir registros en un archivo JSON usando el módulo json.
Ver también
Consulte la sección de lecturas suplementarias del entrenamiento para ampliar su conocimiento en esta temática.
¿Cómo puedo ayudar?
¡Mi soporte está aquí para ayudar!
Mi horario de oficina es de lunes a sábado, de 9 AM a 5 PM. UTM - Madrid, España.
La hora aquí es actualmente 7:35 PM UTM.
Mi objetivo es responder a todos los mensajes dentro de un día hábil.