将Python字符串转换为带8个小数点的浮点型
下面是我的绳子将Python字符串转换为带8个小数点的浮点型,python,Python,下面是我的绳子 str = '0.00007515' 在下面试用 mainValue = float(str) gives me 7.515e-05 output. mainValue =Decimal(str) gives me 0.0 output 我希望以0.00007515浮点或其他数据类型输出。 如何解决此问题。打印值时,只需指定小数点后需要8位数字 mainValue = float(str) print("{:.8f}".format(mainValue)) 使用简单的格
str = '0.00007515'
在下面试用
mainValue = float(str) gives me 7.515e-05 output.
mainValue =Decimal(str) gives me 0.0 output
我希望以0.00007515浮点或其他数据类型输出。
如何解决此问题。打印值时,只需指定小数点后需要8位数字
mainValue = float(str)
print("{:.8f}".format(mainValue))
使用简单的格式功能,精确到您需要的程度
print("{0:.8f}".format(float(str)))
您确定
十进制(str)
输出吗?如果它给出的是0.0
,那将是一个相当令人惊讶的错误。很可能他们改变了十进制的精度。您需要了解数字和显示的区别formats@JBernardo:更改decimal
模块的精度不会在此处给出0.0
。@MarkDickinson是的,我确信使用python 3.7.0可以做到这一点version@vinod:在这种情况下,我怀疑您没有向我们显示您正在使用的实际代码。需要明确的是,Decimal('0.00007515')
真的不可能给你一个0.0
的输出。感谢你用下面的代码回复我。打印({.8f}).format(client.get_orderbook_ticker(symbol=ticker)['askPrice'])并向我抛出错误值error:type'str'@vinod对象的未知格式代码'f',然后在尝试使用此格式解决方案之前,必须将其转换为float
。