python 3中的小数

时间:2013-11-15 02:42:28

标签: python python-3.x

所以我一直在尝试在我的现金登记课程中编写一个部分。我试图使其成为一个整数跟踪总价格。所以例如18.66将是1866年。但我仍然希望它被认为是18.66,如果这是有道理的。这样可以避免累积错误的累积。但我不想改变班级的公共界面。

#!/usr/local/bin/python3

class CashRegister :
    def __init__(self):
        self._itemCount = 0
        self._totalPrice = 0.0

    def addItem(self, price):
        self._itemCount = self._itemCount + 1
        self._totalPrice = self._totalPrice + price

    def getTotal(self):
        return self._totalPrice

    def getCount(self) :
        return self._itemCount

    def clear(self) :
        self._itemCount = 0
        self._totalPrice = 0.0

我不会简单地将0.0改为0吗?或者我会继续做拆分方法并将它们连接在一起?

1 个答案:

答案 0 :(得分:0)

您应该按原样保存数据。

您可以通过格式化来实现您想要的效果。如果我是你,我将添加一个这样的新功能:

def getTotalAsString(self):
        return "%d" % (self._totalPrice * 100)

这种方法将在未来为您提供更大的灵活性