... a pilha de execução da calculadora não deve conter nenhum token? a pilha de execução somente quando o método eval for executado novamente?
Python 3.4.3 (default, Mar 26 2015, 22:03:40) [GCC 4.9.2] on linux Type "copyright", "credits" or "license()" for more information. >>> ================================ RESTART ================================ >>> ================================================== C A L C U L A D O R A P O L O N E S A ================================================== Digite: - uma expressão em notação polonesa como "soma 2 3 + ="; ou - "ver" para ligar/desligar o modo verboso; ou - "dic" para exibir o dicionário de variáveis; ou - "fim" para terminar. Operadores possíveis: + - * / % :cinco operações aritméticas básicas ^ : exponeciação ! : menos unário = : atribuição calc >>> ver AVISO: modo verboso ativado. calc >>> 1 2 3 lista de tokens: [N(1), N(2), N(3)] pilha de execução: [] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [N(2), N(3)] pilha de execução: [N(1)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [N(3)] pilha de execução: [N(1), N(2)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [] pilha de execução: [N(1), N(2), N(3)] dicionário de variáveis: {} modo verboso: ativado ERRO: falta(m) operador(es) nessa expressão calc >>> 3 4 5 + - lista de tokens: [N(3), N(4), N(5), O('+'), O('-')] pilha de execução: [] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [N(4), N(5), O('+'), O('-')] pilha de execução: [N(3)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [N(5), O('+'), O('-')] pilha de execução: [N(3), N(4)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [O('+'), O('-')] pilha de execução: [N(3), N(4), N(5)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [O('-')] pilha de execução: [N(3), N(9)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [] pilha de execução: [N(-6)] dicionário de variáveis: {} modo verboso: ativado -6 calc >>> 6 7 8 * lista de tokens: [N(6), N(7), N(8), O('*')] pilha de execução: [] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [N(7), N(8), O('*')] pilha de execução: [N(6)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [N(8), O('*')] pilha de execução: [N(6), N(7)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [O('*')] pilha de execução: [N(6), N(7), N(8)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [] pilha de execução: [N(6), N(56)] dicionário de variáveis: {} modo verboso: ativado ERRO: falta(m) operador(es) nessa expressão calc >>> 9 10 11 + - lista de tokens: [N(9), N(10), N(11), O('+'), O('-')] pilha de execução: [] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [N(10), N(11), O('+'), O('-')] pilha de execução: [N(9)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [N(11), O('+'), O('-')] pilha de execução: [N(9), N(10)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [O('+'), O('-')] pilha de execução: [N(9), N(10), N(11)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [O('-')] pilha de execução: [N(9), N(21)] dicionário de variáveis: {} modo verboso: ativado lista de tokens: [] pilha de execução: [N(-12)] dicionário de variáveis: {} modo verboso: ativado -12 calc >>> fim Curta a nossa página no feiçebuqui. >>>