👑️
Size: a a a
👑️
БГ
stack = [...]
op_stack = []
while len(stack)>1:
value = stack.pop()
if isinstance(value, (int, float)):
op_stack.push(value)
elif isinstance(value, Operator):
left = op_stack.pop()
right = op_stack.pop()
answer = value(left, right)
op_stack.push(answer)
answer = stack.pop()ВП
K
БГ
py3
from dis import dis
code = "(2**128+3)*5"
dis(code)
1 0 LOAD_CONST 0 (2)
2 LOAD_CONST 1 (128)
4 BINARY_POWER
6 LOAD_CONST 2 (3)
8 BINARY_ADD
10 LOAD_CONST 3 (5)
12 BINARY_MULTIPLY
14 RETURN_VALUE
БГ
py3
from dis import dis
code = "(2**128+3)*5"
dis(code)
1 0 LOAD_CONST 0 (2)
2 LOAD_CONST 1 (128)
4 BINARY_POWER
6 LOAD_CONST 2 (3)
8 BINARY_ADD
10 LOAD_CONST 3 (5)
12 BINARY_MULTIPLY
14 RETURN_VALUE
E
БГ
E
E
ᅠ
E
E
БГ
E
E
БГ
БГ
E