在Python中将2e-3显示为2*10^-3
在Python中是否可以打印2*10^-3而不是2e-3这样的浮动在Python中将2e-3显示为2*10^-3,python,Python,在Python中是否可以打印2*10^-3而不是2e-3这样的浮动 s = str(2e-3) s.replace("e","*10^") 不起作用。错误在于“替换”不会更改s。因此,s=s.replace…修复了所有问题。最后,它应该是这样的,其中打印部分是可选的: s = str("2e-3") s = s.replace("e", "*10^") print(s) 对于输出: 2*10^-3 请使用s=str('2e-3') 对于s=str(2e-3),我将计算2e-3,结果将是一个
s = str(2e-3)
s.replace("e","*10^")
不起作用。错误在于“替换”不会更改
s
。因此,s=s.replace…
修复了所有问题。最后,它应该是这样的,其中打印部分是可选的:
s = str("2e-3")
s = s.replace("e", "*10^")
print(s)
对于输出:
2*10^-3
请使用s=str('2e-3')
对于
s=str(2e-3)
,我将计算2e-3
,结果将是一个flaot,然后将结果转换为string
使用格式获得表示科学记数法中数字的字符串,然后替换“e”
s = '{:.2e}'.format(any_number).replace("e", "*10^")
{.2e}
中的.2
要求两位小数,因此如果任何数字==0
则得到0.00*10^+00,对于0.002,则得到2.00*10^-03
如果要处理特殊情况,可以将格式化字符串拆分为尾数和指数字符串,然后从指数中删除前导“+”和零
ms,es='{:.2e}'.format(any_number).split('e')
if len(es)==3 and es[1]=='0': es = es[0] + es[2]
es = es.replace('+','')
s = ms + '*10^' + es
请将
s=str(2e-3)
替换为s=str('2e-3')
。打印位置?使用print
?您的意思是'0.002'。替换('e','*10^')
以某种方式产生2*10^-3
?没有。你的答案不能回答你自己的问题。