Pergunta

Não quero dizer qual é a diferença técnica, mas o que é o mais rápido/mais lógico ou pitônico, etc. Maneira de fazer isso:

    def __quantized_price(self):
        TWOPLACES = Decimal(10) ** -2
        return self.price.quantize(TWOPLACES)

ou

    def __formatted_price(self):
        TWOPLACES = Decimal(10) ** -2
        return '{0:.2f}'.format(self.price)

Eles parecem ser exatamente iguais, então estou me perguntando por que eles criaram quantize quando

Foi útil?

Solução

Decimal.quantize Retorna um novo Decimal Isso tem um valor diferente.

''.format() formato uma string.

Nesse caso em particular, a impressão do resultado produz a mesma saída. Fora isso, são operações totalmente diferentes que retornam tipos totalmente diferentes.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top