Так что я пытался закодировать раздел в моем классе кассовых аппаратов. Я пытаюсь сделать так, чтобы он отслеживал общую цену как целое. поэтому, например, 18.66 будет 1866. Но я все еще хочу, чтобы это считалось 18.66, если это имеет смысл. это позволяет избежать накопления ошибок округления. Но я не хочу менять публичный интерфейс класса.Десятичные разряды в python 3
#!/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? или я пойду по пути разделить метод и объединить их обратно вместе?
Рассматривали ли вы с помощью [десятичный] (http://docs.python.org /2/library/decimal.html)? – dawg
Правильная ссылка для python3 decimal: http://docs.python.org/3/library/decimal.html – nickzam