TypeError: not enough arguments for format string
使用Python连接数据库的时候,采用的非常非常轻量级的torndb,甚至于事务都不支持,所以用”select * from table where condition=’%s'” % (condition,)
因为用的比较原生,所以各种问题接连不断,最最恶心的就是字符串转义造成的一些列原因.
先采用
condition = re.escape(condition)
能对特殊字符进行转义,但是还是有问题,又报错TypeError: not enough arguments for format string 直到认真看输入的condition字符串的时候,才发现问题所在之处: condition中有% 需要替换%为%%才能正常执行,
condition= condition.replace('\%', '%%')
其实标题有问题,不只是操作数据库,只不过在操作数据库时候,忽略的字符串本身的内容,一直在错误的寻找解决方案.