python - 将 json 对象数组转换为 tsv (python)

标签 python arrays json csv

假设我有以下json对象数组,我想将它们转换成tsv格式。

[
  {
    "x": "1",
    "y": "2",
    "z": "3"
  },
  {
    "x": "6",
    "y": "7",
    "z": "B"
  }
]

有没有人有好的解决办法? (python的json模块只能读取json对象,如何读取json对象数组?)

x<TAB>y<TAB>z
1<TAB>2<TAB>3
6<TAB>7<TAB>8

最佳答案

第一步是使用 json.loads 将 JSON 字符串转换为 Python 对象数组。

最后一步是将 Python 对象写入文件,例如使用 csv.DictWriter

这是一个完整的程序,演示了如何将 JSON 字符串转换为制表符分隔值文件。

import json
import csv

j = json.loads(r'''[
  {
    "x": "1",
    "y": "2",
    "z": "3"
  },
  {
    "x": "6",
    "y": "7",
    "z": "B"
  }
]''')

with open('output.tsv', 'w') as output_file:
    dw = csv.DictWriter(output_file, sorted(j[0].keys()), delimiter='\t')
    dw.writeheader()
    dw.writerows(j)

关于python - 将 json 对象数组转换为 tsv (python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26707137/

相关文章:

c++ - 我们如何使用重复数字进行无限循环?

ruby-on-rails - 有没有办法使用 HashWithIndifferentAccess 序列化 ActiveRecord 的 JSON 属性?

python - 是否有在 Google Colab 上运行 Web 应用程序的通用方法?

Python:从html获取 "id"或 "data-value"?

ruby - 数组用逗号连接,仅当元素不为 nil 时

python - Json 循环的列表索引超出范围错误

php - JSON 解析错误 : unable to parse JSON string when trying to return error message

python - 在调试器中运行时中断下一个输出

python - 元组的元素本身就是元组吗?

JAVA 员工类型与数组