rpn.py (463B)
1 def eval(expr): 2 s = [] 3 for i in expr.split(): 4 if i.isdigit(): 5 s.push(int(i)) 6 else: 7 a = s.pop() 8 b = s.pop() 9 match i: 10 case '+': 11 s.push(b + a) 12 case '-': 13 s.push(b - a) 14 case '*': 15 s.push(b * a) 16 case '/': 17 s.push(b / a) 18 19 print(s.pop()) 20 21 eval("1 2 +")