我想顯示在科學記數法表示:顯示在科學記數法的一些具體數字
-407.45833
到目前爲止,我用這個:
i = '%E' % Decimal(i)
結果:
-4.074583E+02
現在我的問題:我怎麼能再添加一個數字,所以它看起來像這樣:?
-4.074583E+002
我知道我應該找我從Python string formatting表中的答案選擇正確的格式佈局,但我不能找到它。有人可以告訴我結果以及在哪裏找到它嗎?
我想顯示在科學記數法表示:顯示在科學記數法的一些具體數字
-407.45833
到目前爲止,我用這個:
i = '%E' % Decimal(i)
結果:
-4.074583E+02
現在我的問題:我怎麼能再添加一個數字,所以它看起來像這樣:?
-4.074583E+002
我知道我應該找我從Python string formatting表中的答案選擇正確的格式佈局,但我不能找到它。有人可以告訴我結果以及在哪裏找到它嗎?
不幸的是沒有任何直接的方式使用字符串格式化後有三個數字+
。一個簡單的方法來取代它是因爲我們知道的是,指數形式都存儲爲字符串,所以所有的字符串方法都可以使用它。
我寫了一個小功能,需要一個正規科學記數法,後+
回到三位數格式化符號:
from decimal import Decimal
def pretty(notation, n):
if '+' in notation:
return "+".join([notation.split('+')[0],notation.split('+')[1].zfill(n)])
return "-".join([notation.split('-')[0],notation.split('-')[1].zfill(n)])
i = '%E' % Decimal(-407.45833)
print(pretty(i,3)) # leave three digits
,我不相信有該功能......但你可以做到它手動:( – abccd
@abccd如果我改變這個「%.2E」我得到「4.07E + 02」。我希望有一些類似的數字在末尾 – Vipr0
不,不幸的是,不過,你爲什麼需要那麼如果是E + 0123會發生什麼?現在有四位數字...... – abccd