1
如何打印數字科學記數法與是3的倍數的權力?例如:
1.5e4 --> 15e3
1.27e-8 --> 12.7e-9
2.9855e-11 --> 29.855e-9
我在尋找一個類似於計算器上的ENG
按鈕的功能。有沒有一個Python軟件包可以做到這一點?
如何打印數字科學記數法與是3的倍數的權力?例如:
1.5e4 --> 15e3
1.27e-8 --> 12.7e-9
2.9855e-11 --> 29.855e-9
我在尋找一個類似於計算器上的ENG
按鈕的功能。有沒有一個Python軟件包可以做到這一點?
這似乎沒有這樣的功能,但(至少在Python 2.7),請參閱:http://bugs.python.org/issue8060 在http://bytes.com/topic/python/answers/616948-string-formatting-engineering-notation的頁面,我發現以下解決方案(我個人不喜歡那麼多,但似乎工作):
import math
for exponent in xrange(-10, 11):
flt = 1.23 * math.pow(10, exponent)
l = math.log10(flt)
if l < 0:
l = l - 3
p3 = int(l/3) * 3
multiplier = flt/pow(10, p3)
print '%e =%fe%d' % (flt, multiplier, p3)
只需根據您的需要調整它。
編輯: 也請看這裏Print number in engineering format