问题描述
最近在与前端联调过程中,前端要求返回多个 Json 构成的列表数据,数据格式如下:
{
"code": "200",
"msg": "success",
"data": [
{
"question": "1.请问有几个人",
"answer": "12"
},
{
"question": "2.请问您要定什么类型的餐厅?",
"answer": "中餐厅"
},
{
"question": "3.请问您要预订什么时候的餐厅?",
"answer": "周六晚上"
}
]
}
问题解决
logs.txt 文件内容如下:
1.请问有几个人:12
2.请问您要定什么类型的餐厅?:中餐厅
3.请问您要预订什么时候的餐厅?:周六晚上
import json
data = []
txt_path = ("logs.txt")
# 返回一个文件对象
f = open(txt_path)
# 调用文件的 readline()方法 ,按行读取
line = f.readline()
while line:
# 将每一行内容按照冒号分割,取得 "问题_答案" 数组
q_a = line.split(":")
# 获取 q_a 数组第一个元素,即问题
q = q_a[0]
# 获取 q_a 数组第二个元素,即答案
a = q_a[1]
# 将问题,答案拼接成 json 后添加到列表中
data.append({"question": q, "answer": a})
# 读取下一行
line = f.readline()
# 关闭文件对象
f.close()
res = {
"code": "200",
"msg": "success",
"data": data
}
res 的值即为前端要求的返回格式了:
{
"code":"200",
"msg":"success",
"data":[
{
"question":"1.请问有几个人",
"answer":"12\n"
},
{
"question":"2.请问您要定什么类型的餐厅?",
"answer":"中餐厅\n"
},
{
"question":"3.请问您要预订什么时候的餐厅?",
"answer":"周六晚上"
}
]
}