Skip to main content
 首页 » 编程设计

Python:如何将列表字典转换为 JSON 对象

2025年05月04日21Renyi-Fan

我是“json”库的新手,在将列表字典转换为 JSON 对象时遇到问题,下面是我得到的字典:

import json 
 
data = { 
 
     'title' : ['Seven days', 'Not Today', 'Bad Moms'], 
     'date'  : ['July 17', 'Aug 18', 'Jan 19'] 
 
} 
 
json_data = json.dumps(data) 
 
print(json_data) 

这是我得到的结果:

{"title" : ['Seven days', 'Not Today', 'Bad Moms'], "date" : ['July 17', 'Aug 18', 'Jan 19']} 

如何以这种方式构建它:

{"title" : "Seven days","date" : "July 17"}, {"title" : "Not Today","date" : "Aug 18"}, {"title" : "Bad Mom","date" : "Jan 19"} 

谢谢。

请您参考如下方法:

您可以像这样转换您的数据:

d = [{'title': t, 'date': d} for t, d in zip(data['title'], data['date'])] 
#[{'title': 'Seven days', 'date': 'July 17'},  
# {'title': 'Not Today', 'date': 'Aug 18'},  
# {'title': 'Bad Moms', 'date': 'Jan 19'}] 

将其转储到 json 中将产生如下字符串:

'[{"title": "Seven days", "date": "July 17"}, {"title": "Not Today", "date": "Aug 18"}, {"title": "Bad Moms", "date": "Jan 19"}]' 

如果您希望您的 json 对每个对象中的键有一个保证的顺序,您可以使用:

from collections import OrderedDict 
d = [OrderedDict([('title', t), ('date', d)]) for t, d in zip(data['title'], data['date'])]