我正在编写一个api来下载json文件。假设我有3个dict:
{"task_name":"task1","task_info":"aaaaa"}
{"task_name":"task2","task_info":"bbbbb"}
{"task_name":"task3","task_info":"ccccc"}
我想将这些dict返回到一个json文件中。下面是我所做的:
data = json.dumps(tasks_info, default=str)
response = make_response(data, 200, {'mimetype': 'application/json'})
response.headers['Content-Disposition'] = "attachment;filename={}.json".format(urllib.parse.quote('result'))
return response
任务信息是一个包含3条指令的列表。 结果文件将按如下方式打开:
[{"task_name":"task1","task_info":"aaaaa"},{"task_name":"task2","task_info":"bbbbb"},{"task_name":"task3","task_info":"ccccc"}]
这是一条很长的队伍。 我想要的看起来像
[ // the '[' and ']' is not necessary
{"task_name":"task1","task_info":"aaaaa"},
{"task_name":"task2","task_info":"bbbbb"},
{"task_name":"task3","task_info":"ccccc"}
]
我想让每一个dict显示在一个不同的行,而不是每一个dict显示在同一行。 有没有办法改变结果文件的外观
格式化此输出的相关命令发生在json.dumps()中。有很多命令可以用来格式化json。常规方法是定义缩进级别:
将json打印到:
要实现所需的精确格式,需要定义自己的格式化程序类。我使用了this answer并对其进行了编辑以满足您的格式要求。以下是完整的代码:
输出:
相关问题 更多 >
编程相关推荐