[code]
class NodoAlumno():
def __init__(self, nombre_est, apellido_est):
self.nombre = nombre_est
self.apellido = apellido_est
#retorna cadena con los atributos de esta clase
def imprimir(self):
cad = "Nombre: {} Apellido: {} \n".format(self.nombre, self.apellido)
return cad
# --fin NodoAlumno
class CursoIdioma():
def __init__(self, nombre_del_curso):
self.nombre = nombre_del_curso
self.listaCurso = []
# ingresa un estudiante al curso
def ingresar(self, nodo):
self.listaCurso.append(nodo)
# retorna un string con todos los estudiantes en lineas diferentes
def imprimir(self):
if self.calculaCant() == 0:
cad = "No hay alumnos anotados en."+self.nombre + "\n \n"
else:
cad = self.informa_inscriptos()
for i in self.listaCurso:
cad = cad + i.imprimir()
return cad
# Retorna la cantidad de alumnos en este curso
def informa_inscriptos(self):
return "En el curso de {} hay {} inscriptos: \n".format(self.nombre, self.calculaCant())
def calculaCant(self):
return len(self.listaCurso)
# --------fin CursoIdioma
# opcion en el menu principal
def menu_ingreso_de_alumnos():
continuar=""
while continuar !="y" :
nombre = input("ingresa nombre: " )
apellido = input ("ingresa apellido: ")
alumno = NodoAlumno(nombre, apellido)
sig=True
print("elija la clase donde se anotara: \n 0: ingles \n 1: italiano \n 2:mandarin")
while sig:
try:
opcion_clase = int(input())
cursos[opcion_clase].ingresar(alumno)
print(cursos[opcion_clase].informa_inscriptos() )
sig=False
except:
print("ingresar numeros validos")
continuar =input("Para terminar el registro presione la 'y' ")
curso_ingles=CursoIdioma("Ingles")
curso_italiano=CursoIdioma("Italiano")
curso_mandarin=CursoIdioma("Mandarin")
cursos=[curso_ingles, curso_italiano, curso_mandarin ]
# 0 1 2
# ingreso algunos datos para que ya tenga
alumno = NodoAlumno("nom_ing1", "ape_ing1")
cursos[0].ingresar(alumno) # ingles
alumno= NodoAlumno("nom_ing2", "ape_ing2")
cursos[0].ingresar(alumno) # ingles
alumno= NodoAlumno("nom_ita1", "ape_ita1")
cursos[1].ingresar(alumno) # italiano
alumno= NodoAlumno("nom_ita2", "ape_ita2")
cursos[1].ingresar(alumno) #italiano
# inicio del menu
seguir=True
while seguir:
print(" Presione:\n 1: para ingresar alumnos \n 2: imprimir todo el registro \n Otro caracter para salir")
op = input()
if op == "1":
menu_ingreso_de_alumnos()
else:
if op == "2":
str=""
for i in cursos:
str=str+ i.imprimir()+"\n"
print(str)
else:
seguir=False
[/code]
Comentarios sobre la versión: 1.1 (0)
No hay comentarios