-
Notifications
You must be signed in to change notification settings - Fork 0
/
Pila.py
32 lines (26 loc) · 990 Bytes
/
Pila.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/usr/bin/python
# -*- coding: utf-8 -*-
class Pila:
""" Representa una pila con operaciones de apilar, desapilar y
verificar si esta vacia. """
def __init__(self):
""" Crea una pila vacia. """
# La pila vacia se representa con una lista vacia
self.items=[]
def apilar(self, x):
""" Agrega el elemento x a la pila. """
# Apilar es agregar al final de la lista.
self.items.append(x)
def desapilar(self):
""" Devuelve el elemento tope y lo elimina de la pila.
Si la pila esta vacia levanta una excepcion. """
try:
return self.items.pop()
except IndexError:
raise ValueError("La pila esta vacia")
def es_vacia(self):
""" Devuelve True si la lista esta vacia, False si no. """
return self.items == []
def get_size(self):
""" Devuelve el tamaño del arreglo """
return len(self.items)