2012-02-08 36 views
3

我不得不指數字符串轉換,如6.5235375356299998e-07, 爲浮點值,並顯示我的計算像0.00000065235的結果...... 我怎樣才能做到這一點在Python程序?顯示6.5235375356299998e-07沒有指數形式

+4

你試過'float(「6.5235375356299998e-07」)嗎? – 2012-02-08 13:02:55

+0

>>> a = 6.52353753563E-7 >>> float(a) 6.5235375356299998e-07 – StefanS 2012-02-08 13:03:51

+0

是的,我試過了,但結果也是一個指數 – StefanS 2012-02-08 13:04:17

回答

8

6.5235375356299998e-07即使其中有e也是完全合法的浮動。你可以做整個計算它:

>>> 6.5235375356299998e-07 * 10000000 
6.5235375356300001 

>>> 6.5235375356299998e-07 + 10000000 
10000000.000000652 

在第二種情況下,許多數字會消失,因爲Python的浮點精度。

如果您需要在不e字符串表示,試試這個:

>>> '{0:.20f}'.format(6.5235375356299998e-07) 
'0.00000065235375356300' 

,但它會成爲一個字符串,你將無法做任何演算用它了。

+1

甚至'* 1e7' :) – 2012-02-08 13:07:19

+0

超級,這是一個很好的方式!非常感謝你。 – StefanS 2012-02-08 13:07:40