#!/usr/bin/python # -*- coding: utf-8 -*- """ Ejemplo de Clase de Altas, Bajas y Cambios :author: ACL :version: 0.1 """ from Televisor import Televisor from Reproductor import Reproductor import pickle import os class Prueba: """Clase de prueba""" def __init__(self): """Constructor de la clase""" self.__lista = [] # Lista para los objetos creados self.__archivo = "ArchivoBD" self.__msw = 1 if os.path.exists(self.__archivo): with open(self.__archivo, "rb") as fp: self.__lista = pickle.load(fp) # print("constructor") def __del__(self): """Destructor""" # print("Destructor") def menu(self): """menu""" sw = { "1": self.altas, "2": self.bajas, "3": self.cambios, "4": self.visualiza, "9": self.salir, } while self.__msw: # os.system('clear') # NOTA para windows tienes que cambiar clear por cls print("Selecciona una opcion") print("\t1 - Altas") print("\t2 - Bajas") print("\t3 - Cambios") print("\t4 - Visualizar") print("\t9 - salir") # solicituamos una opcion al usuario opcionMenu = input("inserta un numero >> ") sw.get(opcionMenu, self.otro)() def altas(self): """Altas""" print("") opcion = input("Deseas dar de alta un Televisor (1) o un reproductor(2)? ") if opcion == "1": a = Televisor() a.captura() for i in self.__lista: if a.id == i.id: print("Error identificador existe") break else: self.__lista.append(a) elif opcion == "2": b = Reproductor() b.captura() for i in self.__lista: if b.id == i.id: print("Error identificador existe") break else: self.__lista.append(b) def bajas(self): """Bajas""" print("") id = input("Identificador a borrar?") for i in self.__lista: if id == i.id: print("identificador borrado") print(i.identificador()) self.__lista.remove(i) def cambios(self): """Cambios""" print("") id = input("Identificador a cambiar?") for i in self.__lista: if id == i.id: i.captura() else: print("identificador no encontrado") def visualiza(self): """Visualizar""" # print("Visualiza la lista de articulos desde la lista") # print(self.__lista) # Visualiza el objeto lista print("Visualiza la lista de articulos") for i in self.__lista: # i.visualizar() # i.visualizaAtributosJeraquia() print(i) def salir(self): """Salir""" self.__msw = 0 with open(self.__archivo, "wb") as fp: pickle.dump(self.__lista, fp) def otro(self): """En caso de no ser alguna de las opciones definidas""" print("") input( "No has pulsado ninguna opcion correcta...\npulsa una tecla para continuar" ) """ Prueba de las clases """ if __name__ == "__main__": a = Prueba() a.menu()