Skip to content

Commit fe5aca3

Browse files
author
inoveAlumnos
committed
Ejercicios practica
1 parent 1aecff8 commit fe5aca3

File tree

2 files changed

+103
-0
lines changed

2 files changed

+103
-0
lines changed

ejercicios_practica/ejercicio1_.py

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# JSON ETL [Python]
2+
# Ejercicios de práctica
3+
4+
# Autor: Inove Coding School
5+
# Version: 2.0
6+
7+
# IMPORTANTE: NO borrar los comentarios
8+
# que aparecen en verde con el hashtag "#"
9+
10+
import json
11+
12+
13+
def serializar():
14+
print("Funcion que genera un archivo JSON")
15+
# JSON Serialize
16+
# Armar un JSON que represente los datos personales
17+
# de su persona (puede invitar los datos sino quiere exponer
18+
# información confidencial)
19+
20+
# Debe armar un JSON que tenga como datos
21+
# nombre, apellido, DNI
22+
# Dentro debe tener una lista donde coloque cantidad de elementos de vestir
23+
# ejemplo -->
24+
# { "prenda": "zapatilla", "cantidad": 4 }
25+
# { "prenda": "remeras", "cantidad": 12 }
26+
# Que su lista de prendas dentro del JSON tenga al menos 2 prendas
27+
28+
# json_data = {...}
29+
30+
# Una vez que finalice el JSON realice un "dump" para almacenarlo en
31+
# un archivo que usted defina
32+
33+
# Observe el archivo y verifique que se almaceno lo deseado
34+
35+
36+
def deserializar():
37+
print("Funcion que lee un archivo JSON")
38+
# JSON Deserialize
39+
# Basado en la función anterior debe abrir y leer el contenido
40+
# del archivo y guardarlo en un objeto JSON utilizando el método
41+
# load()
42+
43+
# Luego debe convertir ese JSON data en json_string utilizando
44+
# el método "dumps" y finalmente imprimir en pantalla el resultado
45+
# Recuerde utilizar indent=4 para poder observar mejor el resultado
46+
# en pantalla y comparelo contra el JSON que generó en la función anterior
47+
48+
if __name__ == '__main__':
49+
print("Bienvenidos a otra clase de Inove con Python")
50+
51+
serializar()
52+
deserializar()
53+
54+
print("terminamos")

ejercicios_practica/ejercicio2.py

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# JSON ETL [Python]
2+
# Ejercicios de práctica
3+
4+
# Autor: Inove Coding School
5+
# Version: 2.0
6+
7+
# IMPORTANTE: NO borrar los comentarios
8+
# que aparecen en verde con el hashtag "#"
9+
10+
import json
11+
import requests
12+
13+
import matplotlib.pyplot as plt
14+
15+
16+
if __name__ == '__main__':
17+
print("Bienvenidos a otra clase de Inove con Python")
18+
19+
# Ejercicio de consumo de datos por API
20+
url = "https://jsonplaceholder.typicode.com/todos"
21+
22+
# El primer paso es que copien esa URL en su explorador web
23+
# y analicen los datos en general:
24+
# 1) Observando la URL se puede ver que en total hay 200 entradas,
25+
# del id=1 al id=200
26+
# 2) Observando la URL se puede ver que en total hay 10 usuarios,
27+
# del userId=1 al userId=10
28+
# 3) En cada entrada se especifica si el usuario completó ese título,
29+
# mediante el campo "completed".
30+
31+
32+
# Alumno, de cada usuario en el total de las 200 entradas
33+
# debe contar cuantos títulos completó cada usuario (de los 10 posibles)
34+
# y armar un gráfico de barras resumiendo la información.
35+
# gráfico en el eje "x" está cada uno de los 10 usuarios y en el eje
36+
# "y" la cantidad de títulos completados
37+
38+
# Para poder ir haciendo esto debe ir almacenando la información
39+
# de cada usuario a medida que "itera" en un bucle los datos
40+
# del JSON recolectado. Al finalizar el bucle deberá tener la data
41+
# de los 10 usuarios con cuantos títulos completó cada uno.
42+
43+
# Debe poder graficar dicha información en un gráfico de barras.
44+
# En caso de no poder hacer el gráfico comience por usar print
45+
# para imprimir cuantos títulos completó cada usuario
46+
# y verifique si los primeros usuarios (mirando la página a ojo)
47+
# los datos recolectados son correctos.
48+
49+
print("terminamos")

0 commit comments

Comments
 (0)