读取文本文件后向前端返回 多个 Json 构成的列表数据

问题描述

最近在与前端联调过程中,前端要求返回多个 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":"周六晚上"
        }
    ]
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悄悄地努力

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值