Advertisement
Guest User

Untitled

a guest
Apr 20th, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.70 KB | None | 0 0
  1. def compute(number1, number2, operator):
  2.     if operator == "+":
  3.         return number1 + number2
  4.     elif operator == "-":
  5.         return number1 - number2
  6.     elif operator == "*":
  7.         return number1 * number2
  8.     elif operator == "/":
  9.         return number1 // number2
  10.     else:
  11.         return number1 ** number2
  12.  
  13. def evaluate_postfix(test):
  14.     s = Stack()
  15.     test = ' '.join(test)
  16.     tokenList = test.split()
  17.  
  18.     for token in tokenList:
  19.         if token not in "^*+-//":
  20.             s.push(int(token))
  21.         else:
  22.             operand2 = s.pop()
  23.             operand1 = s.pop()
  24.             result = compute(operand1, operand2, token)
  25.             s.push(result)
  26.     return s.pop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement