python 0.1+0.2 不等於0.3 的處理辦法


>>> i=0
>>> while i<1:
i=i+0.1
print(i)


0.1
0.2
0.30000000000000004
0.4
0.5
0.6
0.7
0.7999999999999999
0.8999999999999999
0.9999999999999999
1.0999999999999999
>>> import decimal  ------------------------------------處理辦法:引用decimal類
>>> a=decimal.Decimal('0.1')
>>> b=decimal.Decimal('0.2')
>>> print(a+b)
0.3

擴展

decimal(10,2)的意思

decimal(10,2)中的“2”表示小數bai部分的du位數,zhi如果插入的值未指定小數部分或者小數部分不足dao兩位則會自動補到2位小數,若插入的值小數部分超過了2為則會發生截斷,截取前2位小數。

“10”指的是整數部分加小數部分的總長度,也即插入的數字整數部分不能超過“10-2”位,否則不能成功插入,會報超出范圍的錯誤。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM