Update Python Ofensivo
This commit is contained in:
parent
9d7531b0f1
commit
51ed9bc844
49
python-ofensivo/00_ejercicios/04_ejemplo_clase5.py
Normal file
49
python-ofensivo/00_ejercicios/04_ejemplo_clase5.py
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
"""
|
||||||
|
Ejemplo de clases y objetos en Python
|
||||||
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
class Estudiantes:
|
||||||
|
|
||||||
|
estudiantes = []
|
||||||
|
|
||||||
|
def __init__(self, nombre, edad, sexo):
|
||||||
|
|
||||||
|
self.nombre = nombre
|
||||||
|
self.edad = edad
|
||||||
|
self.sexo = sexo
|
||||||
|
|
||||||
|
Estudiantes.estudiantes.append(self)
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def es_mayor_de_edad(edad):
|
||||||
|
|
||||||
|
return edad >= 18
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def crear_estudiante(cls, nombre, edad, sexo):
|
||||||
|
|
||||||
|
if cls.es_mayor_de_edad(edad):
|
||||||
|
|
||||||
|
return cls(nombre, edad, sexo)
|
||||||
|
else:
|
||||||
|
print(
|
||||||
|
f"[!] Error: El estudiante {nombre} tienen {edad}, no es mayor de edad")
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def mostrar_estudiantes():
|
||||||
|
|
||||||
|
for i, estudiante in enumerate(Estudiantes.estudiantes):
|
||||||
|
print(
|
||||||
|
f"\n[+] Estudiante número {i+1}:\n\t[+] Nombre: {estudiante.nombre}\n\t[+] Edad: {estudiante.edad}\n\t[+] Sexo: {estudiante.sexo}")
|
||||||
|
|
||||||
|
|
||||||
|
Estudiantes.crear_estudiante("Juan", 18, "M")
|
||||||
|
Estudiantes.crear_estudiante("Maria", 19, "F")
|
||||||
|
Estudiantes.crear_estudiante("Pedro", 12, "M")
|
||||||
|
Estudiantes.crear_estudiante("Luisa", 29, "F")
|
||||||
|
|
||||||
|
print("\n[i] Listado de estudiantes:\n")
|
||||||
|
|
||||||
|
Estudiantes.mostrar_estudiantes()
|
Loading…
Reference in New Issue
Block a user