Python 使用Openpyxyl将JSON转换为Excel-转换复杂/嵌套数组

Python 使用Openpyxyl将JSON转换为Excel-转换复杂/嵌套数组,python,arrays,json,excel,openpyxl,Python,Arrays,Json,Excel,Openpyxl,我不熟悉JSON和数组/列表。我正在尝试将此JSON文件放在Excel文件中: { "__collections__": { "users": { "a12jh2d53622146fj": { "age": "19", "location": "USA" }, "agH

我不熟悉JSON和数组/列表。我正在尝试将此JSON文件放在Excel文件中:

{
  "__collections__": {
    "users": {
      "a12jh2d53622146fj": {
        "age": "19",
        "location": "USA"
      },
      "agHSHnAp363mqo125": {
        "age": "4865",
        "location": "UK"
      }
    }
  }
}
这是我一直在研究的代码:

import json
from openpyxl import Workbook

if __name__ == '__main__':

    json_data = {}

    with open("Test.json") as json_file:
        json_data = json.load(json_file)

    wb = Workbook()
    ws = wb.active
    ws.title = "Test"

    ws.cell(1,1, "User ID")
    ws.cell(1,2, "Age")
    ws.cell(1,3, "Location")

    row = 1

    for userID in json_data.keys():
        row += 1
        ws.cell(row,1, userID)
        ws.cell(row,2, str(json_data[userID]["age"]))
        ws.cell(row,3, str(json_data[userID]["location"]))
        
    wb.save("Test.xlsx")
不幸的是,上述代码仅在JSON文件如下时有效:

{
  "a12jh2d53622146fj": {
    "age": "19",
    "location": "USA"
  },
  "agHSHnAp363mqo125": {
    "age": "4865",
    "location": "UK"
  }
}
这是输出的excel文件:

{
  "__collections__": {
    "users": {
      "a12jh2d53622146fj": {
        "age": "19",
        "location": "USA"
      },
      "agHSHnAp363mqo125": {
        "age": "4865",
        "location": "UK"
      }
    }
  }
}


干杯

你说“不幸的是,只有当我删除这些行时它才起作用”,这没有帮助。当您运行发布的代码时,显示发生了什么-哪里出了问题,这才有帮助。这意味着如果你遇到python错误,就要包含完整的堆栈跟踪。当我运行你的代码时,我会得到KeyError:“age”,你需要从那里开始调查。现在的情况是,您正在迭代
json_数据
(它有一个单键
\uuuu集合
),您应该迭代
json_数据['''''''uu集合]['users']
嘿@joao,谢谢您的帮助!它与此代码一起工作<代码>用于json_数据[''.\u集合]['users'].keys()中的用户ID: