【错误】python百分号冲突not enough arguments for format string
2024-10-09 00:46:49
query = "SELECT * FROM devices WHERE devices.`id` LIKE '%{}%'".format("f2333")
datas = cur.query(query)
报错:
query = query % tuple([db.literal(item) for item in args])
TypeError: not enough arguments for format string
传入query语句拼接出来为
SELECT * FROM devices WHERE devices.`mac` LIKE '%f8272e010882%'
此时还在python解释器中运行,这里的%加后面的字符会被python解析为占位符,如%f为float,所以报错缺少参数。
解决
使用转义,转义%要使用%转义。
query = "SELECT * FROM devices WHERE devices.`id` LIKE '%%{}%%'".format("f2333")
datas = cur.query(query)
最新文章
- NSIS 让程序以管理权限运行
- poj3635Full Tank?[分层图最短路]
- vijos1431[noip2007]守望者的逃离(背包动规)
- BZOJ 4325: NOIP2015 斗地主
- [转]PDF预览插件PDFObject.js
- settimeout 传递带有参数的函数
- php object转数组示例
- iOS:横向使用iPhone默认的翻页效果
- Android:控件ListView列表项与适配器结合使用
- AES的S-BOX构造
- 理解MVC路由配置(转)
- 开始着手Oracle中Scott用户的管理系统
- hdu1021
- Linux ls命令详解
- springboot kafka集成(实现producer和consumer)
- linux下安装nodejs及npm
- 二、redis持久化
- python实现本地图片上传到服务区
- 洛谷P3602 Koishi Loves Segments(贪心,multiset)
- 002-红黑树【B-树】、二叉查找树