1+ #08
2+ #Clases
3+ class Perro : # La primera en mayuscula
4+ def __init__ (self , nombre , raza ): # Inicializador
5+ self .nombre = nombre
6+ self .raza = raza
7+
8+ def ladrar (self ):
9+ print (f"{ self .nombre } está ladrando" )
10+
11+ mi_perro = Perro ("Max" , "Labrador" )
12+ tu_perro = Perro ("Luna" , "Poodle" )
13+
14+ mi_perro .ladrar () # Max está ladrando
15+ tu_perro .ladrar () # Luna está ladrando
16+
17+ # Herencias
18+ class Animal :
19+ def __init__ (self , nombre ):
20+ self .nombre = nombre
21+
22+ def hablar (self ):
23+ print ("Este animal hace un sonido" )
24+
25+ class Gato (Animal ):
26+ def hablar (self ):
27+ print (f"{ self .nombre } dice miau" )
28+
29+ mi_gato = Gato ("Michi" )
30+ mi_gato .hablar () # Michi dice miau
31+
32+
33+ # Ejercicio
34+ # Definición de la clase
35+ class Persona :
36+ # Inicializador: se ejecuta al crear un nuevo objeto
37+ def __init__ (self , nombre , edad ):
38+ self .nombre = nombre # atributo de instancia
39+ self .edad = edad # atributo de instancia
40+
41+ # Método: función dentro de la clase
42+ def mostrar_info (self ):
43+ print (f"Nombre: { self .nombre } , Edad: { self .edad } " )
44+
45+ def cumplir_años (self ):
46+ self .edad += 1
47+
48+ # Crear un objeto (instancia) de la clase Persona
49+ persona1 = Persona ("Brian" , 24 )
50+
51+ # Llamamos al método que imprime los datos
52+ persona1 .mostrar_info () # 👉 Nombre: Brian, Edad: 24
53+
54+ # Modificamos los atributos directamente
55+ persona1 .nombre = "Andrés"
56+ persona1 .edad = 25
57+
58+ # Imprimimos de nuevo
59+ persona1 .mostrar_info () # 👉 Nombre: Andrés, Edad: 25
60+
61+ persona1 .cumplir_años ()
62+ persona1 .mostrar_info ()
63+
64+ """ * DIFICULTAD EXTRA (opcional):
65+ * Implementa dos clases que representen las estructuras de Pila y Cola (estudiadas
66+ * en el ejercicio número 7 de la ruta de estudio)
67+ * - Deben poder inicializarse y disponer de operaciones para añadir, eliminar,
68+ * retornar el número de elementos e imprimir todo su contenido."""
69+
70+ class Pila :
71+ def __init__ (self ):
72+ self .list = []
73+
74+ def add (self , dato ):
75+ self .list .append (dato )
76+ pass
77+ def remove_pila (self ):
78+ self .list .pop ()
79+
80+ def remove_cola (self ):
81+ self .list .pop (0 )
82+
83+ def count_list (self ):
84+ self .cuenta = len (self .list )
85+ print (f"\n Hay { self .cuenta } elementos en la lista" )
86+
87+ def mostrar_info (self ):
88+ print (f"\n Lista: { self .list } " )
89+
90+ mi_pila = Pila ()
91+ mi_pila .add (1 )
92+ mi_pila .add (2 )
93+ mi_pila .add (3 )
94+ mi_pila .add (4 )
95+
96+ mi_pila .mostrar_info ()
97+ mi_pila .count_list ()
98+
99+ mi_pila .remove_pila ()
100+
101+ mi_pila .mostrar_info ()
102+ mi_pila .count_list ()
103+
104+ mi_pila .remove_cola ()
105+
106+ mi_pila .mostrar_info ()
107+ mi_pila .count_list ()
108+
109+ mi_cola = Pila ()
110+ mi_cola .add (1 )
111+ mi_cola .add ("A" )
112+ mi_cola .add ("B" )
113+
114+ mi_cola .mostrar_info ()
0 commit comments