【发布时间】:2015-01-29 19:36:47
【问题描述】:
我试图请求一个浮点变量,然后将其科学记数法分配给它,然后在以下操作中使用该记数法。如,我希望程序实际使用符号,而不仅仅是返回结果。 我设法使用打印功能转换变量:
def estim(abs(x)):
a=print("{:.3e}".format(x))
return a
然而,这实际上并没有赋予 x 科学价值。然后我尝试了
b=float(a)
但是 a 是 None 类型,所以它不起作用。有什么帮助吗?
编辑:科学记数法是指 X.YYYe+Z, 例如:31234.34234 -> 3.12e+04
【问题讨论】:
-
好吧,你的代码没有意义。也许,
a="{:.3e}".format(x)会起作用? -
在 Python
floats 内部不能使用“十进制表示法”或“科学表示法”。这些只是输出格式。 “使用符号”是什么意思? -
我的意思是,程序不会理解 44432.12,而是将其视为 4.44*10^4,例如,实际上是 44400。@ForceBru 的建议似乎有效,谢谢。
-
@L.R.
31234.34234 -> 3.12e+04... 你需要a="{:.2e}".format(x)而不是a="{:.3e}".format(x)。 (现在不要编辑) -
你想用这个号码做什么?科学记数法是一种显示数字的方法。它不会改变数字是什么。因此,如果您真正想要的是使用它的字符串表示,那么“使用科学记数法中的数字”才有意义。
标签: python scientific-notation