Cómo implementar pilas con listas de Python

Las operaciones sobre listas que posee Python son parecidas a las operaciones que definen a una pila. La interfaz no es exactamente la que deberı́a de ser, pero se pueden desarrollar programas para convertir el TAD Pila a las operaciones predefinidas.

A este programa se lo llama implementación del TAD Pila. En general, una
implementación es un conjunto de métodos que satisfacen los requisitos previos sintácticos y semánticos de la interfaz.

He aquí una implementación de el TAD Pila que utiliza una lista Python:

Un objeto Pila contiene un atributo llamado elementos que es una lista de elementos en la pila. El método de inicialización pone una lista vacı́a en elementos.

Para meter un elemento nuevo en la pila, push lo apila en elementos. Para
quitar un elemento de la pila, pop utiliza el método de lista homónimo 2 para quitar y devolver el último elemento de la lista.

Finalmente, para probar si la pila esta vacı́a, isEmpty (está vacı́a) compara elementos con la lista vacı́a.

Una implementación como esta, en la cual los métodos consisten de llamadas a métodos existentes, se llama enchapado. En la vida real, un enchapado es una capa fina de madera de alta calidad que se utiliza en la fabricación de muebles para ocultar madera de baja calidad. Los cientı́ficos informáticos utilizan esta metáfora para describir una parte de un programa que esconde los detalles de una implementación y que provee una interfaz mas simple o mas estándar.