miércoles, 22 de junio de 2011

modelado en Python de una pila a travez de la clase list()

"""
En este ejemplo se muestra como se puede modelar la estructura de datos de una pila a travez de la clase list().
Para hacer esto se crea una nueva clase llamada "pila" que hereda de la clase list()
"""



class pila(list): # Hereda de la clase list().
 def intdata(self, data): # Metodo para introducir datos.
   self.append(str(data)) # Se insertan elementos en el ultimo lugar de la lista.
 def outdata(self):       # Metodo para extraer datos.
   findex=len(self)-1     # Se obtiene la longitud de la lista.
   result=self[findex]    # Se Copia ultimo elemento de la lista.
   del self[findex]       # Se Borra este ultimo elemento.
   return result          # Se retorna el ultimo elemento copiado anteriormente.



# Ejemplo:

p=pila() # Se crea el objeto de la clase pila
print "Se muestra la Pila Vacia:"
print p  # Se muestran los elementos de la lista. En este caso la lista esta vacia.
print "Se insertan los elementos uno a uno"
for i in range(5): # Se crear un clico para introducir datos.
  p.intdata(i)     # Se inserta cada elemento.
  print p          # Se van mostrando los elementos ya insertados.
print "Se muestrab todos los elementos"
print p            # Se muestran todos los elementos de la lista.
print "A continuacion se van a ir extranendo los elementos: uno a uno"
for i in range(5): # Se crear un clico para extraer los datos datos.
  p.outdata()      # Se va extraindo dato a dato.
  print p          # Se muestran los elementos que van quedando
print "La lista nuevamente queda vacia"
print p            # Finalmente se muestra la lista nuevamente vacia.

No hay comentarios: