0 Comments

En este punto se procederá a la creación de 2 ejemplos usando un JSON como BD, leyéndola y luego imprimiendo el reporte en modo consola.

Ejemplo Nro. 1: Ejemplo sencillo.

Paso Nro. 1: Crear el proyecto conteniendo la siguiente estructura:

Paso Nro. 2: Creación del JSON: cursos.json

[
{
"nombre":"Python",
"slug": "python"
 },
{
"nombre":"Go",
"slug": "go"
 },
{
"nombre":"PHP",
"slug": "php"
 }
]

Paso Nro. 3: Creación del cuerpo del programa: main.py

import json

def cargar_datos(ruta):
with open(ruta) as contenido:
cursos = json.load(contenido)
print(cursos)

if __name__ == '__main__':
ruta = 'cursos.json'
 cargar_datos(ruta)

Ejemplo Nro. 2: Ejemplo sencillo + filtro de datos

Paso Nro. 1: Crear el json con datos para filtrar (verificar que el dato slug tiene el mismo dato "go")

[
{
"nombre":"Python",
"slug": "python"
 },
{
"nombre":"Go",
"slug": "go"
 },
{
"nombre":"PHP",
"slug": "php"
 }
]

Paso Nro. 2: Actualizar el main.py con el dato de input y output de cursos:

import json

def cargar_datos(ruta):
with open(ruta) as contenido:
cursos = json.load(contenido)
output_cursos = [x for x in cursos if x['slug'] == 'go']
print(output_cursos)

if __name__ == '__main__':
ruta = 'cursos.json'
 cargar_datos(ruta)

Ejemplo Nro. 3: Ejemplo avanzado normalmente usado cuando se usan microservicios y usando filtros:

Paso Nro. 1: Crear el JSON

{
"red": "Super Red",
"activo": 1,
"redes": [{
"red": "red01",
"activo": 1
},
{
"red": "red02",
"activo": 1
},
{
"red": "red03",
"activo": 0
}]
}

Paso Nro. 2: Crear el main.py

import json 

def cargar_datos(ruta):     
with open(ruta) as contenido:         
redes = json.load(contenido)         
output_redes = [x for x in redes['redes'] if x['activo'] == 1]         
print(output_redes) 

if __name__ == '__main__':     
ruta = 'redes.json'    
 cargar_datos(ruta)

Otra posible solución del main.py:

import json 

def cargar_datos(ruta):     
with open(ruta) as contenido:         
redes = json.load(contenido)         
for x in redes['redes']: 
if x['activo'] == 1: 
print('Nombre de red:', x['red']) 
print('Activo:', x['activo'])

if __name__ == '__main__':     
ruta = 'redes.json'    
 cargar_datos(ruta)

Y el resultado sería el siguiente:

Deja una respuesta

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

Related Posts