首页 > 解决方案 > CSV行跳转功能

问题描述

我正在尝试使用 Flask 和 Python 制作表单,我想将从模板中获取的元素保存在 CSV 文件中。

我做了一个函数,应该将模板的数据保存在一行中,当它到达最后一个模板时,保存在 CSV 行中并进行行跳转。

但是,它不会将信息保存在 csv 的同一行中,而是将从模板中获取的最后一个元素写入新行,并且应该将其保存在同一行中:

图片

函数代码如下:

def write(test,final):
    lista=[]
    for x in test:
        print(test[x])
        lista.append(test[x])
    with open('covid.csv', 'a') as f:
        if final == '0':
            print("Dentro de if 0")
            for line in lista:
                name=io.StringIO(line)
                coma=io.StringIO(",")
                f.write(str(name.read()))
                f.write(str(coma.read()))
        if final == '1':
            print("Dentro de if 1")
            for line in lista:
                name=io.StringIO(line)
                coma=io.StringIO(",")
                f.write(str(name.read()))
                f.write(str(coma.read()))
            f.write(str("\n")

该函数调用如下:

@app.route('/sintomas', methods=['GET','POST'])
def sintomas():
    print("Prueba de datos:")
    if request.method == 'POST':
        test = request.form.to_dict()
        print(test)
        write(test,'0')
    return render_template('nuevaplantilla6.html')

@app.route('/signos', methods=['GET','POST'])
def sintomas2():
    print("Prueba de datos:")
    if request.method == 'POST':
        test = request.form.to_dict()
        print(test)
        write(test,'1')
    return render_template('plantilla7.html')

标签: pythoncsvflask

解决方案


推荐阅读