2024-04-24 08:43:51 发布
网友
浮点数如下:
6.07345232904e+23
我怎样才能把它转换成小数点后两位?你知道吗
我试过round()。 但它不起作用。你知道吗
round()
不能。该值约为607345232904000000000000,已经有两个以上的小数位。如果希望表示法有两个小数位,则必须指定该小数位。你知道吗
>>> '{:.3g}'.format(6.07345232904e+23) '6.07e+23'
要回答您对实际要做什么的澄清,即以给定精度比较两个数字:
有不同的方法可以做到这一点,这取决于你的标准是什么。最简单的解决办法是
abs(a-b) <= tolerance
如果您使用的是python3.5,那么可以使用math.isclose。对于早期版本,这在功能上应该是等效的
def isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0): return abs(a-b) <= max(rel_tol * max(abs(a), abs(b)), abs_tol)
如果你真的需要处理所有的角落案件,你将不得不some additional work。你知道吗
不能。该值约为607345232904000000000000,已经有两个以上的小数位。如果希望表示法有两个小数位,则必须指定该小数位。你知道吗
要回答您对实际要做什么的澄清,即以给定精度比较两个数字:
有不同的方法可以做到这一点,这取决于你的标准是什么。最简单的解决办法是
如果您使用的是python3.5,那么可以使用math.isclose。对于早期版本,这在功能上应该是等效的
如果你真的需要处理所有的角落案件,你将不得不some additional work。你知道吗
相关问题 更多 >
编程相关推荐