在获取在线交易数据时,我的输出如下:-
['2019-02-10T00:17:00.000Z', 3629.0, 3629.5, 3629.0, 3629.5, 91920.0],
我希望输出为:-
[{"TimeStamp":"2019-02-10T00:17:00.000Z", "Open":"3629.0","Close": "3629.5", "Low":"High":"3629.0", "Low":"3629.5", "Volume":"91920.0"}],
答案 0 :(得分:1)
基本上,您需要做的是导入json模块并使用json.dump(mList,file)。
但是,我想要的结构是,最好将列表解析为字典,然后使用json模块将该字典序列化为json文件。基本上是json.dump(mDict,file)
示例:
首先导入json模块。
import json
然后将您的列表解析为字典(执行此操作的方法不同)
mList = ['2019-02-10T00:17:00.000Z', 3629.0, 3629.5, 3629.0, 3629.5, 91920.0]
mDict = {
"TimeStamp":mList[0],
"Open": mList[1],
"Close": mList[2],
"High" : mList[3],
"Low" : mList[4],
"Volume" : mList[5]
}
或者您也可以使用Jay的zip方法。
然后完成
with open('test.json','w') as my_json:
json.dump(mDict,my_json)
答案 1 :(得分:1)
尝试以下代码。在这种情况下,我将按与输入列表相同的顺序维护一个键列表,然后使用zip对其进行配对。
data = ['2019-02-10T00:17:00.000Z', 3629.0, 3629.5, 3629.0, 3629.5, 91920.0]
keys = ['TimeStamp', 'Open', 'Close', 'Low', 'High', 'Volume']
res_dict = {}
for x,y in zip(keys, data):
res_dict[x] = y
res_list = [res_dict]
print res_list
输出:
[{'Volume': 91920.0, 'TimeStamp': '2019-02-10T00:17:00.000Z', 'High': 3629.5, 'Low': 3629.0, 'Close': 3629.5, 'Open': 3629.0}]