quantze()和str.format()之间有什么区别?

oro*_*aki 3 python string django quantization

我并不是说技术上的区别是什么,而是更快/更符合逻辑或Pythonic等方式:

    def __quantized_price(self):
        TWOPLACES = Decimal(10) ** -2
        return self.price.quantize(TWOPLACES)
Run Code Online (Sandbox Code Playgroud)

要么

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

它们似乎完全一样,所以我只是想知道为什么它们会在什么时候创建量化

Set*_*eth 7

Decimal.quantize返回Decimal具有不同值的新值.

''.format() 格式化字符串.

在这种特殊情况下,打印结果会产生相同的输出.除此之外,它们是完全不同的操作,返回完全不同的类型.