Skip to content

Commit 29033a8

Browse files
authored
Merge pull request mouredev#4412 from Kenysdev/25.py
#25 - python
2 parents 211317b + b8bcb3d commit 29033a8

File tree

1 file changed

+79
-0
lines changed

1 file changed

+79
-0
lines changed

Roadmap/25 - LOGS/python/kenysdev.py

+79
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# ╔═════════════════════════════════════╗
2+
# ║ Autor: Kenys Alvarado ║
3+
# ║ GitHub: https://github.com/Kenysdev ║
4+
# ║ 2024 - Python ║
5+
# ╚═════════════════════════════════════╝
6+
7+
# -----------------------------------
8+
# * LOGS
9+
# -----------------------------------
10+
# Mas info: https://medium.com/@sachinsoni600517/logging-in-python-a-step-by-step-tutorial-086a617f4eaa
11+
12+
import logging
13+
14+
"""
15+
* EJERCICIO #1:
16+
* Explora el concepto de "logging" en tu lenguaje. Configúralo y muestra
17+
* un ejemplo con cada nivel de "severidad" disponible.
18+
"""
19+
20+
# Para registrar mensajes en diferentes niveles.
21+
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')
22+
23+
# 1. DEBUG
24+
logging.debug('depuración')
25+
26+
# 2. INFORMACIÓN:
27+
logging.info('informativo')
28+
29+
# 3. ADVERTENCIA:
30+
logging.warning('Ddvertencia')
31+
32+
# 4. ERRORES:
33+
logging.error('Error')
34+
logging.critical('Error crítico')
35+
36+
"""
37+
* EJERCICIO #2:
38+
* Crea un programa ficticio de gestión de tareas que permita añadir, eliminar
39+
* y listar dichas tareas.
40+
* - Añadir: recibe nombre y descripción.
41+
* - Eliminar: por nombre de la tarea.
42+
* Implementa diferentes mensajes de log que muestren información según la
43+
* tarea ejecutada (a tu elección).
44+
* Utiliza el log para visualizar el tiempo de ejecución de cada tarea.
45+
"""
46+
47+
class Program():
48+
def __init__(self):
49+
self.tasks: dict = {}
50+
logging.debug('Se inició instancia de la clase.')
51+
52+
def add(self, name: str, description: str):
53+
self.tasks[name] = description
54+
logging.info('Se agregó una tarea.')
55+
56+
def delete(self, name: str):
57+
if name in self.tasks:
58+
del self.tasks[name]
59+
logging.info(f"Tarea '{name}' eliminada.")
60+
else:
61+
print()
62+
logging.warning(f"No se encontró la tarea '{name}'.")
63+
64+
def show_list(self):
65+
logging.info('Lista de tareas')
66+
for task, des in self.tasks.items():
67+
print(f"{task} -- {des}")
68+
69+
print("\nEJERCICIO #2")
70+
71+
tasks = Program()
72+
73+
tasks.add("a", ".1")
74+
tasks.add("b", "2")
75+
tasks.add("c", "3")
76+
77+
tasks.delete("a")
78+
tasks.show_list()
79+

0 commit comments

Comments
 (0)