Skip to content
Python price handling for humans
Python
Find file
Latest commit aec3348 Feb 23, 2016 @patrys patrys 0.5.8
Failed to load latest commit information.
prices
.coveragerc
.gitignore
.travis.yml Drop support for Python 3.2, add 3.4 and 3.5 Jan 12, 2016
README.md Update README.md Jun 12, 2015
setup.py

README.md

Prices: Python price handling for humans

Build Status codecov.io


from prices import Price, PriceRange, LinearTax
p = Price('1.99')
p += Price(50)
p |= LinearTax('0.23', '23% VAT')
print p.quantize('0.01').gross
# Decimal('63.95')
pr = PriceRange(Price(50), Price(100))
print p in pr
# True

While protecting you from all sorts of mistakes:

Price(10, currency='USD') < Price(15, currency='GBP')
# ValueError: Cannot compare prices in 'USD' and 'GBP'
Price(5, currency='BTC') + Price(7, currency='INR')
# ValueError: Cannot add price in 'BTC' to 'INR'

And being helpful:

from prices import Price, LinearTax, inspect_price
p = Price('1.99')
p += Price(50)
p |= LinearTax('0.23', '23% VAT')
print inspect_price(p)
# "Price('1.99', currency=None) + Price('50', currency=None) | LinearTax('0.23', name='23% VAT')"
Something went wrong with that request. Please try again.