>As a side note, Excel also uses floats for currency
It's still problematic, but the defaults and handling there avoid some issues. So, for example:
Excel: =1.03-.42 produces 0.61, by default, even if you expand out the digits very far.
Python: 1.03-.42 produces 0.6100000000000001, by default.