I prefer Python's explicit approach to decimal types:
$ python -c "from decimal import Decimal as D; print(D('.1')+D('.2')-D('.3'))"
0.0
Or if you prefer true rational numbers: $ python -c "from fractions import Fraction as F; print(F('.1')+F('.2')-F('.3'))"
0
$ python -c "from fractions import Fraction as F; print(F('3.1415927'))"
31415927/10000000