如何将收到的变量解析为数组。我从一个站点收到它们,我想将它们插入到我的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'和...
的不支持的操作数类型答案 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);
}