Объектный подход: стек с нуля (продолжение)
Проанализируйте код ниже - мы создали три объекта класса Stack
. Далее мы их перемешали. Попробуйте предсказать значение, выводимое на экран.
class Stack:
def __init__(self):
self.__stack_list = []
def push(self, val):
self.__stack_list.append(val)
def pop(self):
val = self.__stack_list[-1]
del self.__stack_list[-1]
return val
little_stack = Stack()
another_stack = Stack()
funny_stack = Stack()
little_stack.push(1)
another_stack.push(little_stack.pop() + 1)
funny_stack.push(another_stack.pop() - 2)
print(funny_stack.pop())
Итак, каков результат? Запустите программу и проверьте, были ли Вы правы.