Есть код вида:
def get_all_sum(self, amount):
amount = float(amount)
if amount>0.0 and amount<=301.0:
res = amount + 30.0
if amount>301.0 and amount<=1001.0:
res = amount + 40.0
if amount>1001.0 and amount<=3001.0:
res = amount + 60.0
if amount>3001.0:
res = amount + amount*0.02
return float(Decimal(Decimal.from_float(res).quantize(Decimal('0.01'), rounding=ROUND_UP)))
Сумма выдается через rest api. Реализация в этой части абсолютно одинаковая.
...
my_amount = serializer.validated_data['amount']
return Response({'amount_all': obj.get_all_sum(my_amount)})
На сервере для 9999.99 он выдает
{"amount_all":10199.9898}
на тесте
{"amount_all":10199.99}
Из-за чего такое может быть?