如何使用 python 将 JSON 数据转换为 .tsv 文件。

ban*_*der 5 csv json python-3.x

我的 json 数据如下所示:

data ={
    "time": "2018-10-02T10:19:48+00:00",
    "class": "NOTIFICATION",
    "type": "Access Control",
    "event": "Window/Door",
    "number": -61
}
Run Code Online (Sandbox Code Playgroud)

所需的输出必须是这样的:

time   class  type   event   number 
2018-10-02T10:19:48+00:00  NOTIFICATION  Access Control  Window/Door -61
Run Code Online (Sandbox Code Playgroud)

谁能帮我,提前致谢

Tee*_*Kea 5

我认为这与将 JSON 转换为 csv 相同,但您可以使用制表符作为分隔符,而不是使用逗号,如下所示:

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()
Run Code Online (Sandbox Code Playgroud)

如果您的 json 文件有多个数据行,上面的代码将起作用。如果您只有一个数据行,下面的代码应该适合您:

tsv_writer.writerow(data.keys()) # write the header
tsv_writer.writerow(data.values()) # write the values
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。