最近做數據處理,遇到了Python中小數的這種問題,寫出來當做筆記。
代碼:
x = 6.2 + 0.1
print(x)
x = 6.3 + 0.1
print(x)
第一個輸出6.3 是沒有任何問題的,但是第二個本應該是6.4。但是出來的卻是一大串,這個比較令我困惑。後面發現其實就是Python的數據類型問題。解決方式如下:
方式1:
x = Decimal('6.3') + Decimal('0.1')
print(x)
方式2:
x = "%.1f" % (6.3+0.1)
print(x)