Gostaria de enviar o meu código para ele. Eu não estou conseguindo resolver o problema, quando eu coloco:
print("ICPP com IKCV' {}".format(calculador.realiza_calculo(orcamento, ICPP(IKCV))))
O erro é: TypeError: calcula() missing 1 required positional argument: 'orcamento' Contudo o meu método calculo recebeu como parâmetro o orcamento conforme código abaixo.
class Imposto(object):
def init(self, outro_imposto = None): self.__outro_imposto = outro_imposto
@abstractmethod def calcula(self, orcamento): pass
def calculo_do_outro_imposto(self, orcamento): if self.outro_imposto is None: return 0 else: return self.outro_imposto.calcula(orcamento)
@property def outro_imposto(self): return self.__outro_imposto
class Templatedeimposto_condicional(Imposto): __metaclass = ABCMeta
def calcula(self, orcamento):
if self.deve_usar_maxima_taxacao(orcamento): return self.maxima_taxacao(orcamento) + self.calculo_do_outro_imposto(orcamento) else: return self.minima_taxacao(orcamento) + self.calculo_do_outro_imposto(orcamento)
@abstractmethod def deve_usar_maxima_taxacao(self, orcamento): pass
@abstractmethod def maxima_taxacao(self, orcamento): pass
@abstractmethod def minima_taxacao(self, orcamento): pass