Usando "Decimal" em Python
Alguém pode por favor explicar o que está acontecendo abaixo: (eu uso o Python 3.3)
1. >>> Decimal("0.1") + Decimal("0.1") + Decimal("0.1") - Decimal("0.3")
Decimal('0.0')
2. >>> Decimal(0.1) + Decimal(0.1) + Decimal(0.1) - Decimal(0.3)
Decimal('2.775557561565156540423631668E-17')
3. >>> Decimal(0.1 + 0.1 + 0.1 - 0.3)
Decimal('5.5511151231257827021181583404541015625E-17')
Eu sei que tem a ver com limitação de ponto flutuante, eu ficaria feliz se alguém pode explicar por que
O que tem a" "
tem a ver com a diferença entre o exemplo 1 e 2 acimaPor que 2 produz uma resposta diferente de 3, dado que ambos não têm" "
?