Hola necesito ayuda con una práctica de la universidad. El ejercicio consiste en crear un elemento con atributos y subelementos con sus propios atributos. He decidido hacerlo sobre la liga ACB.Tengo la clase de Equipos y la clase Jugadores. El programa tiene que añadir, eliminar y modificar equipos, incluyendo a sus jugadores. No sé cómo hacer para que los jugadores estén dentro de cada equipo y cada equipo se me guarde con todos sus atributos. Se supone que se tiene que guardar en un mapa o eso dijo el profe pero no se como hacerlo. Adjunto lo que tengo de programa, si alguien me pudiera ayudar lo agradecería
class Equipo: # Clase de los equipos
equipos = []
def __init__(self, name, ciudad, colores):
self.name = name
self.ciudad = ciudad
self.colores = colores
self.jugadores = []
def __str__(self):
return "Nombre: {0}\nCiudad: {1}\nColores: {2}\nJugadores: {3}\n".format(self.name, self.ciudad,
self.colores, self.jugadores)
def __del__(self):
return "El siguiente equipo ya no existe: ".format(self.name)
def __new__(cls, *args, **kwargs):
pass
def __cmp__(self, other):
pass
def existe_equipo(self):
nombre = input("Introduzca el nombre del equipo:")
if self.name == nombre:
return True
else:
return False
class Jugador(): # Clase de los jugadores
def init(self, nombre, edad, altura, dorsal, posicion):
self.nombre = nombre
self.edad = edad
self.altura = altura
self.dorsal = dorsal
self.posicion = posicion
def __str__(self):
return "Nombre: {0}\nEdad: {1}\nAltura: {2}\nDorsal: {3}\nPosición: {4}\n".format(self.nombre, self.edad,
self.altura, self.dorsal,
self.posicion)
def __del__(self):
return "El siguiente jugador ya no pertenece al equipo: ".format(self.nombre)
def existe_jugador(self):
nombre = input("Introduzca el nombre del jugador:")
if self.nombre == nombre:
return True
else:
return False
def nuevo_jugador():
n = input("Nombre del jugador: ")
e = input("Edad: ")
h = input("Altura: ")
d = input("Dorsal: ")
p = input("Posición: ")
return Jugador(n, e, h, d, p)
def nuevo_equipo(): # Añadir un nuevo equipo
n = input("Nombre del equipo: ")
c = input("Ciudad residente: ")
co = input("Colores del equipo: ")
e = Equipo(n, c, co)
print("Estos son los datos de su equipo: ", e)
print("Jugadores de ", e.name, “: \n”
“Opciones:\n”
“1: Introducir un jugador\n”
“2: Borrar un jugador\n”
“3: Consultar un jugador\n”
“4: Actualizar un jugador\n”
“5: Mostrar todos los jugadores\n”
“6: Jugadores listos”)
opcion = int(input("Introduzca una opción: "))
while opcion != 6:
if opcion in range(1, 6):
if opcion == 1:
nuevo_jugador()
elif opcion == 2:
nombre = input("Introduzca el nombre del jugador que desea eliminar: ")
del(nombre)
elif opcion == 3:
jugador = input("Introduzca el nombre del jugador que desea consultar: ")
str(jugador)
elif opcion == 4:
jugador = input("Introduzca el nombre del jugador que desea actualizar: ")
str(jugador)
jugador.nombre = input("Nombre actualizado: ")
jugador.edad = input("Edad actualizada: ")
jugador.altura = input("Altura actualizada: ")
jugador.dorsal = input("Dorsal actualizado: ")
jugador.posicion = input("Posición actualizada: ")
str(jugador)
elif opcion == 5:
print("Jugadores:")
else:
opcion = int(input("La opción debe estar entre 1 y 6: "))
def opciones(): # Menu
print(“LIGA ACB DE BALONCESTO”)
print(“1: Introduce un equipo\n”
“2: Borrar un equipo\n”
“3: Consultar un equipo\n”
“4: Actualizar un equipo\n”
“5: Mostrar todos los equipos\n”
“6: Finalizar programa”)
opcion = int(input("Introduzca una opción: "))
while opcion < 1 or opcion > 6:
opcion = int(input("Escoja una opción entre 1 y 6: "))
return opcion