簡體   English   中英

在python中將數字轉換為公制單位

[英]converting numbers to metric unit in python

在python 100*0.000001這樣做時,我得到了9.999999999999999e-05我需要做什么才能獲得1e-05

浮點數不准確。 您可以在打印時將其表示為1e-4 ,或者使用Decimal來獲取確切的值。 例如

>>> print '{:4.0e}'.format(100*0.000001)
1e-04

要么

>>> Decimal(100)*Decimal('0.000001')
Decimal('0.000100')

不要做乘法:

>>> 100e-7
1e-05

意識到盡管0.1是二進制中的無限重復數字,但是不久之后您就會發現其他工件的近似值:

>>> 100e-7*.1
1.0000000000000002e-06

然后只需處理格式化輸出中的問題:

>>> '{:e}'.format(100*0.000001)
'1.000000e-04'
>>> '{:e}'.format(100*0.0000001)
'1.000000e-05'
>>> '{:e}'.format(100*0.00000001)
'1.000000e-06'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM