如何在不丢失有效数字的情况下转换str中的浮点数?

时间:2016-05-16 01:49:26

标签: python string number-formatting

我想转换0.054000中的str号,但是当我写srt(0.054000)时,我得到'0.054'。我需要'0.054000'。我该怎么办?

我有一个带数字的数据文件作为我的例子(0.054000)。我需要计算每个数字的数字。我不知道如何以我计算七位数的方式读取该数字。例如。

2 个答案:

答案 0 :(得分:0)

我认为Dan Patterson的方法是唯一可靠的方法 - python在.0054和.054000之间没有区别:例如。

>>> .0054 is .0054000
True

因此,您可能只需使用他的方法或(str(.0054000) + "0"*number_of_sig_figs)来指定您在sig figs中的位数。

答案 1 :(得分:0)

格式说明符以冒号开头,然后可能包含显示的任何术语 在下面的括号中(每个术语都是可选的)

:[[填充]对齐] [符号] [#] [0] [宽度] [,] [。精度] [类型]

下面提供了[.precision]的简要说明。

.precision :字符串的最大字符数(整数);的位数 浮子精度。对于f,F,e和E类型说明符,这是数字 小数点右边的数字。

我们可以使用它来指定浮点值的精度:

a=0.540000
print("{:06f}".format(a))

这将提供所需的输出:

0.540000

希望这很有帮助!