The need to represent instances of money frequently arises in software development, particularly any financial/economics software. To address that need, the py-moneyed package provides the classes of Money and Currency, at a level more useful than just using Python's Decimal class, or ($DEITY forbid) the float primitive. The package is meant to be stand-alone and used directly, or be subclassed further. py-moneyed is BSD-licensed.
pip install py-moneyed
from moneyed import Money, USD five_dollars = Money(5, USD)
You then use
Money objects as if they were numbers, and they behave
sensibly. See docs for more
information (or the
Some of the py-moneyed code was first derived from python-money available via this URL: http://code.google.com/p/python-money/ Due to inactivity, it was forked by @limist in 2010 and later moved to the py-moneyed organization.