Unerwartete Gleitkommadarstellungen in Python
Hallo, ich verwende ein Wörterbuch in Python, in dem einige Städte und ihre Bevölkerung so gespeichert sind:
population = { 'Shanghai' : 17.8, 'Istanbul' : 13.3, 'Karachi' : 13.0, 'mumbai' : 12.5 }
Jetzt wenn ich den Befehl benutzeprint population
Ich erhalte das Ergebnis:
{'Karachi': 13.0, 'Shanghai': 17.800000000000001, 'Istanbul': 13.300000000000001, 'mumbai': 12.5}
wohingegen, wenn ich den Befehl verwendeprint population['Shanghai']
Ich bekomme den ersten Input von17.8
.
Meine Frage an Sie ist, wie funktioniert das?17.8
und das13.3
wurde zu17.800000000000001
und13.300000000000001
beziehungsweise? Wie sind all diese Informationen entstanden? Und warum wird es dort gespeichert, da meine anfängliche Eingabe besagt, dass ich diese zusätzlichen Informationen nicht benötige, zumindest soweit ich weiß.