Skip to content

Commit 54c0a8e

Browse files
committed
feat: #10 - Python
Reto #10 - Python realizado por mrodara
1 parent 067928c commit 54c0a8e

File tree

1 file changed

+62
-0
lines changed

1 file changed

+62
-0
lines changed
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
#################### EXCEPCIONES EN PYTHON ############################
2+
3+
'''
4+
Una excepción o un error de ejecución se produce durante la ejecución del programa.
5+
Las excepciones se pueden manejar para que no termine el programa.
6+
'''
7+
8+
# Excepción de división por cero
9+
try:
10+
a = 10/0
11+
except ZeroDivisionError:
12+
print("No se puede dividir por cero")
13+
finally:
14+
print("Finalizó la ejecución")
15+
16+
my_list = [i for i in range(5)]
17+
18+
try:
19+
print(my_list[5]) # Genera un IndexError
20+
except IndexError:
21+
print(f"Índice fuera de rango, mostramos el último elemento de la lista: {my_list[-1]}")
22+
23+
# Definir una excepción propia
24+
'''
25+
Para crear un tipo de excepción personalizada en Python, podemos definir una nueva clase que herede
26+
de la clase base de excepciones.
27+
Esto permite generar errores específicos para ciertos casos en tu aplicación.
28+
'''
29+
class MyException(Exception):
30+
def __init__(self, message: str = "Error personalizado") -> None:
31+
super().__init__(message)
32+
33+
try:
34+
raise MyException("Este es un error personalizado")
35+
except MyException as e:
36+
print(f"Captura de la excepción: {e}")
37+
38+
#################### FIN EXCEPCIONES EN PYTHON ############################
39+
40+
#################### EXTRA ############################
41+
42+
def my_exception_managment(value1 : int = 0, value2 : int = 0, value3: tuple = (), boolvalue: bool = True) -> None:
43+
try:
44+
return value1 / value2
45+
except ZeroDivisionError:
46+
print("No se puede dividir por cero")
47+
48+
try:
49+
value2 + value3
50+
except TypeError:
51+
print("No se puede sumar un entero con un string")
52+
53+
try:
54+
print(value4)
55+
except NameError:
56+
print("La variable no está definida")# No se puede acceder a una variable no definida
57+
finally:
58+
print("Finalizó la ejecución")
59+
60+
my_exception_managment(10, 0, (1, 2, 3), True)
61+
62+
#################### FIN EXTRA ############################

0 commit comments

Comments
 (0)