class nodo: def __init__(self, dato=None): self.dato = dato self.liga = None class pila: def __init__(self): self.cabeza = None def apilar (self, dato): if self.cabeza == None: self.cabeza = nodo(dato) return nuevo = nodo(dato) nuevo.liga = self.cabeza self.cabeza = nuevo def desapilar (self): if self.cabeza is None: print ("\n Primero debe apilar!") return print(f'\n El numero {self.cabeza.dato} fue desapilado') self.cabeza = self.cabeza.liga def imprimirpila(self): if self.cabeza is None: print ("\n Primero debe apilar!") return print(" \n Pila:") aux = self.cabeza while aux != None: if aux.dato > 9 and aux.dato < 100: print(f''' __________ | | | {aux.dato} | |________|''') elif aux.dato > 99 and aux.dato < 1000: print (f''' __________ | | | {aux.dato} | |________|''') elif aux.dato > 999: print (f''' ___________ | | | {aux.dato} | |_________|''') else: print(f''' _________ | | | {aux.dato} | |_______|''') aux = aux.liga print("")