Qual é a diferença entre quantize () e str.format ()?
-
19-09-2019 - |
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
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