Python 如何将一个变量值嵌入另一个变量?
我想将一个变量的值嵌入另一个变量,如下所示,但下面的代码不起作用。想知道如何在Python中实现它。我的变量x不断动态变化,希望将其作为一个单独的值Python 如何将一个变量值嵌入另一个变量?,python,Python,我想将一个变量的值嵌入另一个变量,如下所示,但下面的代码不起作用。想知道如何在Python中实现它。我的变量x不断动态变化,希望将其作为一个单独的值 x = '1' b = '''SELECT * FROM table WHERE col1 IN ( CONCAT('abc',{{x}},'def%'), CONCAT('abc',{{x}},'ghi%') )
x = '1'
b = '''SELECT *
FROM table
WHERE col1 IN ( CONCAT('abc',{{x}},'def%'),
CONCAT('abc',{{x}},'ghi%')
);
'''
解决方案可能类似于:
x = "1"
b = "SELECT * FROM TABLE.... 'abd{0}def%'\n'...abc{0}ghi%'".format(x)
对于其余细节,Michael Butscher提供了重要参考。您必须使用处理SQL的库。请阅读它的文档,让它处理查询中的变量,不要自己编写带有插值变量的自定义查询。这些很容易导致SQL注入漏洞。因此,您有一个命名字符串和一个查询。连接或游标在哪里?可以使用
str.format
,但对于SQL,使用执行参数是更好的方法,正如@AndrasDeak已经提到的那样。