接口返回的json字符串中,有值为 Null的。
经过 json.loads(text)后,生成的字典对象中,Null已经被转成None了,拼接sql语句时,字段是字符串类型,对应的值是字符串:’None‘,字段非字符串类型,则对应的值是None (这个None在数据库中被当成一个字段或者变量),所以会报错:no such column: None
解决方法,对拼接好的sql字符串进行处理:
sql = sql.replace("'None',", "null,").replace("None,", "null,")
附:
json字符串转python对象的数据类型转换表 loads()
python对象转json字符串类型转换表 dumps()