Meu código, funcionou normalmente assim como o do professor porém não entendi uma coisa. No na parte do código onde o objeto calculador chama a função de realiza_calculo são passados como parametros o orçamento e calcula_ISS pro exemplo. Porém a função que calcula ISS ou ICMS precisa de um valor para realizar o calculo. De onde o valor vem se não é passado para a função ?
A parte do código que me trai dúvida está abaixo :
calculador.realiza_calculo(orcamento, calcula_ISS)
calculador.realiza_calculo(orcamento,calcula_ICMS)