遇到一个问题,我的 JSON 数据被打印为科学记数法而不是浮点数。
import urllib2
import json
import sys
url = 'https://bittrex.com/api/v1.1/public/getmarketsummary?market=btc-quid'
json_obj = urllib2.urlopen(url)
QUID_data = json.load(json_obj)
QUID_MarketName_Trex = QUID_data["result"][0]["MarketName"][4:9]
QUID_Last_Trex = QUID_data["result"][0]["Last"]
QUID_High_Trex = QUID_data["result"][0]["High"]
QUID_Low_Trex = QUID_data["result"][0]["Low"]
QUID_Volume_Trex = QUID_data["result"][0]["Volume"]
QUID_BaseVolume_Trex = QUID_data["result"][0]["BaseVolume"]
QUID_TimeStamp_Trex = QUID_data["result"][0]["TimeStamp"]
QUID_Bid_Trex = QUID_data["result"][0]["Bid"]
QUID_Ask_Trex = QUID_data["result"][0]["Ask"]
QUID_OpenBuyOrders_Trex = QUID_data["result"][0]["OpenBuyOrders"]
QUID_OpenSellOrders_Trex = QUID_data["result"][0]["OpenSellOrders"]
QUID_PrevDay_Trex = QUID_data["result"][0]["PrevDay"]
QUID_Created_Trex = QUID_data["result"][0]["Created"]
QUID_Change_Trex = ((QUID_Last_Trex - QUID_PrevDay_Trex)/ QUID_PrevDay_Trex)*100
QUID_Change_Var = str(QUID_Change_Trex)
QUID_Change_Final = QUID_Change_Var[0:5] + '%'
print QUID_Last_Trex
它打印以下值;1.357e-05
。
我需要这是一个小数点后面有 8 个字符的浮点数 (0.00001370)
正如你在这里看到的 -->https://i.stack.imgur.com/qqhNc.jpg,我的 GUI 显示第一行正确(使用完全相同的代码)。
您正在查看的是default str()
格式化浮点数,其中科学记数法用于足够小的或足够大的数字。
你不需要转换这个,价值本身是一个适当的浮动。如果您需要以不同的格式显示它,格式化它明确地:
>>> print(0.00001357)
1.357e-05
>>> print(format(0.00001357, 'f'))
0.000014
>>> print(format(0.00001357, '.8f'))
0.00001357
这里的f
format always对值使用定点表示法。默认精度为6位;这.8
指示f
格式化程序显示 8 位数字。
在Python 3中,默认的字符串格式本质上与format(fpvalue, '.16g')
; the g
格式根据数字的指数使用科学或定点表示。使用Python 2'.12g'
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)