python format 字典_python 用字典格式化字符串

想要达成的效果是:

从前端得到一句特定格式sql -->

取出sql中的占位字段,再给到前端用户填写 -->

把用户填写的数据格式化sql中,执行sql -->

实现步聚如下:

例如下面一句sql:

UPDATE loan_order SET STATUS='{STATUS}' WHERE order_num='{order_num}';

用正则提取STATUES、order_num

def select_sql(sql):

# re.I 使匹配对大小写不敏感

pattern = re.compile('{([a-z\w]+)}', re.I)

result = pattern.findall(sql)

return result

# ['STATUS', 'order_num']

把result给到前端,生成input,让用户填写值,后台得到值后,处理生dict格式,把dict格式传给如下方法,并格式化sql

input = {'STATUS': 159, 'order_num': 123456789}

run_sql(sql, **input)

def run_sql(sql, **kwargs):

if isinstance(sql, str):

sql = sql.format(**kwargs)

print(sql)

else:

print('error')

# UPDATE loan_order SET STATUS='159' WHERE order_num='123456789';

最后一步,连接数据库,执行sql

大功告成!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值