class Dequeue:
def __init__(self):
self.items = []
def is_empty(self):
return self.items == []
def append(self, data):
self.items.append(data)
def append_left(self, data):
self.items.insert(0, data)
def pop(self):
return self.items.pop()
def pop_left(self):
return self.items.pop(0)
q = Dequeue()
print('Menu')
print('append ')
print('appendleft ')
print('pop')
print('popleft')
print('quit')
while True:
do = input('What would you like to do? ').split()
operation = do[0].strip().lower()
if operation == 'append':
q.append(int(do[1]))
elif operation == 'appendleft':
q.append_left(int(do[1]))
elif operation == 'pop':
if q.is_empty():
print('Dequeue is empty.')
else:
print('Popped value from right: ', q.pop())
elif operation == 'popleft':
if q.is_empty():
print('Dequeue is empty.')
else:
print('Popped value from left: ', q.pop_left())
elif operation == 'quit':
break