我想为那些不知道 .json 格式的人创建一个 .csv 模板。但是我不确定哪种是标记 json 中的嵌套属性和列表的最佳方法。例如这个:
[
{
name: "John",
age: 46,
address: [
{
street:"longroad",
number: 12,
type: "main adress"
},
{
street:"summerroad",
number: 25,
type: "summer house"
}
]
}
]
我在想:
name,age,address/street-1,address/number-1,address/street-2,address/number-2
或
name,age,address.street-1,address.number-1,address.street-2,address.number-2
那你觉得怎么样?我个人不喜欢它...我试图找到最简单的一种在 python 中转换(从 .csv 到 .json)。
最佳答案
解决方案是将 CSV 嵌入 CSV 中。这个想法是使用逗号作为文件的分隔符,然后使用分号分隔符作为具有多个值的字段:
csv_data = csv.reader(csvfile, delimiter=',')
然后对于包含嵌入值的每一列:
for line in csv_data:
if ';' in line:
csv_embed_data = csv.reader([line], delimiter=';')
# continue parsing
那么您的 CSV 将如下所示:
name,age,street;number
John,46,longroad;12
对于具有相同 (name,age)
的值列表,您需要为每个不同的值重复这些行:
name,age,street;number;type
John,46,longroad;12;"main address"
John,46,summerroad;12;"summer house"
HTH
关于python - 这是在 python 中标记 csv 文件以转换为 json 文件的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35937276/