如何使用python将JSON转换为表格?

时间:2019-07-18 20:26:22

标签: python json

嗨,我是python的初学者。 我有一个从数据库检索的csv文件。该表有几列,其中一列包含json中的数据。我很难将json数据转换为要保存为pdf的表。 首先,我加载csv。然后,我将包含json中数据的列进行转换。

df = pd.DataFrame(pd.read_csv('database.csv',sep=';'))
print(df.head())

for index, row in df.iterrows():

    str = row["json_data"]
    val = ast.literal_eval(str)
    val1 = json.loads(str)

我的json样本

{
    "title0": {
        "id": "1",
                 "ex": "90",
    },
    "title1": {
        "name": "Alex",
        "surname": "Boris",
        "code": "RBAMRA4",

    },
    "title2": {
        "company": "LA",
        "state": "USA",
        "example": "9090",

    }
}

我正在尝试创建一个这样的表


-------------------------------------------\
title0
--------------------------------------------\
id 1
ex 90
---------------------------------------------\
title 1
---------------------------------------------\
name Alex
surname Boris
code RBAMRA4
----------------------------------------------\
title2
----------------------------------------------\
company LA
state USA
example 9090

1 个答案:

答案 0 :(得分:1)

您可以使用Python JSON库来实现此目的。

import json

my_str = open("outfile").read()
val1 = json.loads(my_str)

for key in val1:
    print("--------------------\n"+key+"\n--------------------")
    for k in val1[key]:
        print(k, val1[key][k])

将JSON数据加载到json.jsonloads函数中,这将反序列化字符串并将其转换为python对象(整个对象成为字典)。

然后您以所需的方式遍历字典。

--------------------
title0
--------------------
id 1
ex 90
--------------------
title1
--------------------
name Alex
surname Boris
code RBAMRA4
--------------------
title2
--------------------
company LA
state USA
example 9090

阅读有关解析字典的知识,然后您将了解for循环。