我正在调用API并收到类似这样的回复:
'[{"time": 1477612800', ' "close": 5000', ' "high": 5000', ' "low":
2100', ' "open": 2100', ' "volumefrom": 0.08311', ' "volumeto":
414.42}', ' {"time": 1477699200', ' "close": 4000', ' "high": 30000', '
"low": 4000', ' "open": 12001', ' "volumefrom": 9.88', ' "volumeto":
46066.49}', ...]'
我想要的是制作一个每行都是'时间'值和列将是其余值(close,open,high,low)。
我很丢失,我发现的大部分资源都假设我的数据以不同的格式发回。我该怎么做呢?
答案 0 :(得分:0)
首先,您的JSON响应似乎没有效果,不应该在其中包含任何单引号。使用正确的响应,首先需要将字符串加载到json:
import json
response_string = '[{"time": 1477612800, "close": 5000, "high": 5000, "low": 2100, "open": 2100, "volumefrom": 0.08311, "volumeto": 414.42}, ...]'
response_json = json.loads(response_string)
然后你可以随时打印这些值(使用Python 3.6特性f字符串):
for item in response_json:
print(f'{item["time"]},{item["close"]},{item["high"]},{item["low"]},{item["open"]},{item["volumefrom"]},{item["volumeto"]}')
或没有f-strings(Python 3.5及更低版本):
for item in response_json:
print(item["time"] + ',' + item["close"] + ',' + item["high"] + ',' + item["low"] + ',' + item["open"] + ',' + item["volumefrom"] + ',' + item["volumeto"]')