小數問題是計算機編程中大部分語言都會遇到的問題,尤其是在內容中涉及到評分、金額計算等等,本人一般在解決需求中固定小數位的數字計算時,都會先將其放大整10的倍數至整數,然后計算、存儲,只有在顯示的時候再將其縮小至所需的精度:如人民幣的計算和存儲都是以分為單位。
在學習python的時候同樣也會有這樣的問題,下面代碼只是簡單的將輸入的小數四舍五入精確到小數點后第二位
from _pydecimal import Decimal
exchange = 6.4696
while True:
dollar = float(input('請輸入美元金額:'))
if dollar == 0:
break
yuan = dollar * exchange
yuan2 = Decimal(yuan).quantize(Decimal('0.00'))
print('{dol}美元可兌換人民幣%.2f元'.format(dol=dollar) % yuan2)
