【问题标题】:Convert json response to formatted table in python将json响应转换为python中的格式化表
【发布时间】:2022-01-04 03:57:47
【问题描述】:

我有一个已经展平的类别列表,但不确定如何将其转换为如下示例所示的表格。因此,如果 has children 等于 false,那么这将是我的 id,然后如果 has children 为 true,我将得到名字等等。我认为可以通过循环分类列表来完成



"response": {
    "category_list": [
      {
        "category_id": 100017,
        "parent_category_id": 0,
        "name": "Women Clothes",
        "has_children": true
      },
      {
        "category_id": 100118,
        "parent_category_id": 100017,
        "name": "Socks & Stockings",
        "has_children": true
      },
      {
        "category_id": 100419,
        "parent_category_id": 100118,
        "name": "Others",
        "has_children": false
      },
      {
        "category_id": 100418,
        "parent_category_id": 100118,
        "name": "Pantyhose",
        "has_children": false
      },
      {
        "category_id": 100417,
        "parent_category_id": 100118,
        "name": "Socks",
        "has_children": false
      }
]
}

所以结果应该是这样的:

Id Category 1 Category 2 Category 3 Category 4
100419 Women Clothes Socks & Stockings Others
100417 Women Clothes Socks & Stockings Pantyhose
100418 Women Clothes Socks & Stockings Socks

【问题讨论】:

  • 请不要删除答案(可能)基于的信息。问题应该是可以回答的,即使在被回答之后。 (您有权删除任何答案,如果这是您所做的,请接受我的道歉。但是,在这种情况下,请使用您从问题中删除的回答部分创建您自己的答案。如果您再次删除它们并且相应地描述您的编辑,然后将留下该编辑。)

标签: python arrays json python-3.x list


【解决方案1】:

你正在寻找-

import pandas as pd
pd.DataFrame.from_records(d['category_list'])

假设 d 是一个字典,而 d['category_list'] 是一个列表

【讨论】:

  • 哦,但我需要将该类别列表转换为看起来像显示的表格
  • 它只是这样出现的
  • 我的类别列表有一个逻辑要遵循,不仅要转换为表格
【解决方案2】:

最简单的方法是使用 python pandas 从 JSON 创建一个数据框

 import pandas as pd
 df = pd.read_json('data.json')
 print(df.to_string())

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多