我的json数据如下:
data ={
"time": "2018-10-02T10:19:48+00:00",
"class": "NOTIFICATION",
"type": "Access Control",
"event": "Window/Door",
"number": -61
}
所需的输出必须是这样的:
time class type event number
2018-10-02T10:19:48+00:00 NOTIFICATION Access Control Window/Door -61
有人可以帮我吗,谢谢
答案 0 :(得分:2)
我认为这与将JSON转换为csv相同,但是可以使用 tab 作为分隔符,而不是使用逗号,如下所示:
import json
import csv
# input data
json_file = open("data.json", "r")
json_data = json.load(json_file)
json_file.close()
data = json.loads(json_data)
tsv_file = open("data.tsv", "w")
tsv_writer = csv.writer(tsv_file, delimiter='\t')
tsv_writer.writerow(data[0].keys()) # write the header
for row in data: # write data rows
tsv_writer.writerow(row.values())
tsv_file.close()
如果您的json文件具有多个数据行,则上面的代码将起作用。如果只有一行数据,则下面的代码将为您工作:
tsv_writer.writerow(data.keys()) # write the header
tsv_writer.writerow(data.values()) # write the values
希望这会有所帮助。