Python 如何将科学符号数字打印成相同的比例
我想用python打印具有相同比例的科学符号数字。例如,我有不同的数字Python 如何将科学符号数字打印成相同的比例,python,numpy,Python,Numpy,我想用python打印具有相同比例的科学符号数字。例如,我有不同的数字(1e-6,3e-7,5e-7,4e-8),所以现在我想用e-6符号(1e-6,0.3e-6,0.5e-6,0.04e-6)打印所有这些数字。那我怎么打印呢 谢谢从数学上讲,加上e-6等于乘以1e-6,对吗 因此,您有一个数字x,您想知道使用什么y,以便y*1e-6==x 所以,只需乘以1e6,以非指数格式呈现,然后将e-6作为字符串: def e6(x): return '%fe-6' % (1e6 * x,) 使用l
(1e-6,3e-7,5e-7,4e-8)
,所以现在我想用e-6
符号(1e-6,0.3e-6,0.5e-6,0.04e-6)
打印所有这些数字。那我怎么打印呢
谢谢从数学上讲,加上
e-6
等于乘以1e-6
,对吗
因此,您有一个数字x
,您想知道使用什么y
,以便y*1e-6==x
所以,只需乘以1e6,以非指数格式呈现,然后将e-6
作为字符串:
def e6(x):
return '%fe-6' % (1e6 * x,)
使用
log10
:
In [64]: lis= (1e-6, 3e-7, 5e-7, 4e-8)
In [65]: import math
In [66]: for x in lis:
exp=math.floor(math.log10(x))
num=x/10**exp
print "{0}e-6".format(num*10**(exp+6))
....:
....:
1.0e-6
0.3e-6
0.5e-6
0.04e-6
在使用numpy时,您一定要看看函数,尤其是它的
格式化程序
参数,它采用了一个类似{'float':formatting_function}
的字典。为您的特定案例使用最合适的格式化功能