and while I'm at it:
I propose adding an "abstract" money base type to the standard library, to be subclassed by real money/decimal implementations.
if isinstance(v, basemoney): # yay! it's money print float(money) # let's hope it's not too much
The goal is not to standardize any behaviour beyond this; anything else should be provided by subtypes.
More details here:
I can produce PEP and patch if necessary.