python - 在 Python 中展平 Json 嵌套循环
问题描述
我有一个 CSV,它有一个 JSON 格式的列。请让我知道使用 Python 为以下内容展平 JSON 的方法吗?
{
"xxx": {
"A": "741",
"B": "Jacob",
"C": {
"UId": "1234",
"Name": "Jacob",
"Class": "Two",
"Age": "07"
},
"D": "None",
"E": "None",
"F": "None",
"G": "None",
"H": "None",
"I": "None",
"J": "None",
"K": "None",
"L": {
"Id1": "852",
"CompanyName": "Jacob and Sons",
"Id2": "963",
"Address": "zoo",
"J": {
"Product": [{
"AId": "789",
"AName": "Rice",
"AType": "Basmati"
}, {
"AId": "456",
"AName": "Soup",
"AType": "Tomato"
}, {
"AId": "123",
"AName": "Milk",
"AType": "Almond"
}, {
"AId": "000",
"AName": "Yogurt",
"AType": "Greek"
}]
}
},
"Order": {
"Pending": "None",
"Orders": [{
"A": "159",
"B": "753",
"C": "ABC",
"D": "EFG",
"E": "blablabla",
"Date": "2016-10-02T17:27:04Z",
"Status": "Completed",
"xxx": {
"F": "789",
"G": "456",
"H": "qwe",
"I": "asd",
"J": "123",
"K": "None"
},
"Z": "None"
}, {
"A": "951",
"B": "357",
"C": "mnb",
"D": "lkj",
"E": "hehehe",
"Date": "2016-10-02T17:27:04Z",
"Status": "Completed",
"xxx": {
"F": "",
"G": "",
"H": "",
"I": "",
"J": "215737",
"K": "None"
},
"Z": "None"
}],
"Y": [{
"A": "456",
"B": "963",
"C": "tyu",
"D": "fgh",
"E": "vbn",
"H": "2016-10-02T17:22:38Z",
"J": "2016-10-02T17:27:04Z",
"K": "None",
"Z": {
"A": "846",
"B": "ABC",
"C": "def",
"D": "rdx",
"F": "cde",
"G": "opk",
"H": "yum",
"J": "852"
}
}]
},
"Values": "None"
},
"ValidErrors": {
"Errors": [{
"Code": "123",
"Description": "No detail"
}, {
"Code": "456",
"Description": "No Service"
}, {
"Code": "789",
"Description": "Try again"
}]
},
"Status": "Active",
"Number": "789654321"
}
解决方案
您可以使用 json 库 => https://docs.python.org/3/library/json.html
import json
flattenJsonStr = json.dumps(json.loads(jsonStr))
这应该做的工作
推荐阅读
- spring-boot - How set default API definition url in openapi?
- ios - Do .symbol files in IPA be downloaded to user's iPhone?
- java - How to inject javascript code in jmeter WebDriver sample?
- php - 如何最小化同一控制器的 Laravel 函数中使用的 try..catch()
- android - What is the purpose of typing
after children in flutter? do I need to use it? - javascript - 使用行跨度对数据表进行分页
- python - Pygame 和 Pymunk Programm 用后屏加载一点然后关闭
- apache-nifi - URL and Sample Payload to update NIFI Parameter
- reactjs - Combine django and react
- scala - 当 A 显然是单例时,“A 没有可用的单例值”