从python flask中解析收到的变量

时间:2017-05-24 13:50:49

标签: python flask type-conversion

如何将收到的变量解析为数组。我从一个站点收到它们,我想将它们插入到我的firebird数据库中,但如果我可以通过将其解析为列表来实现这一点,那将会快得多。 这就是我的烧瓶代码的样子:

@app.route('/fddatumupdate', methods=['GET'])
def fddatumupdate():

    datums = request.args.get('datums') 
    IDS1 = request.args.get('ids1') 
    IDS2 = request.args.get('ids2') 
    IDS3 = request.args.get('ids3') 

    print datums
    print IDS1
    print IDS2
    print IDS3

    #cur.execute("UPDATE OR INSERT INTO T_FOOD_DUTY (F_FD_DATE, F_US_ID1, F_US_ID2, F_US_ID3) values(%s, %s, %s) matching (F_FD_DATE)")
    return("great succes")

这是打印输出,因此您可以看到我的数据的外观:

2017-5-15,2017-5-16,2017-5-17,2017-5-18,2017-5-19,2017-5-20,2017-5-21
27,36,26,435,26,30,31
27,28,30,435,27,28,26
30,28,30,28,29,28,27 

当我尝试将它们从NoneType解析为字符串或数组时,我总是得到错误: TypeError:+:'NoneType'和...

的不支持的操作数类型

2 个答案:

答案 0 :(得分:1)

您可以通过,字符split字符串,您将获得一个列表:

print datums.split(',')

或者,您可以使用list comprehensions构建列表并进行额外检查:

# example code
if datums:  # this will check if 'datums' is None
    print [i if i > 0 for i in datums.split(',')]  # include element in list only if it is larger than 0

答案 1 :(得分:0)

找到答案,我在收到变量时解析了我收到的变量,并将它们放入我的局部变量中。它需要像这样:

for (int i = 0; i < validContours.size(); i++)
{
        if (boundRect[i].area() < 50)continue;

        rectangle(fin, boundRect[i].tl(), boundRect[i].br(), color, 2, 8, 0);
    }