Po prostu bawię się ucząc się funkcji klas itd. Tak więc postanowiłem stworzyć prostą funkcję, która powinna dać mi kwotę podatku.nieobsługiwany typ (y) argumentu dla *: 'float' i 'Dziesiętny'
to jest mój kod do tej pory ...
class VAT_calculator:
"""
A set of methods for VAT calculations.
"""
def __init__(self, amount=None):
self.amount = amount
self.VAT = decimal.Decimal('0.095')
def initialize(self):
self.amount = 0
def total_with_VAT(self):
"""
Returns amount with VAT added.
"""
if not self.amount:
msg = u"Cannot add VAT if no amount is passed!'"
raise ValidationError(msg)
return (self.amount * self.VAT).quantize(self.amount, rounding=decimal.ROUND_UP)
Mój problem jest Dostaję następujący błąd:
nieobsługiwany typ argumentu (ów) dla *: 'pływaka' i " Dziesiętny "
Nie rozumiem, dlaczego to nie powinno działać!
pływak, dziesiętnie, to samo? Czego powinienem używać w przypadku waluty? – Prometheus
Jest odwrotnie; 'self.VAT = decimal.Decimal ('0.095')'. –
@ Spike: Nie, 'decimal.Decimal()' to nie to samo, co 'float'. Jest to inne podejście do obsługi liczb rzeczywistych przez komputery. –