TypeError

Re: TypeError

by José Coelho de Pina -
Number of replies: 0

... 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.

>>>