使用python在一个字符串中创建多个字符串

2024-09-26 22:44:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我不熟悉使用python编写sql字符串,想知道是否有人可以帮助我。所以目前我正在写这样一个sql语句

   sql_statement = """SELECT * from some_database WHERE FirstName IN (%(first_names)s)"""
   first_names = ['fn1', 'fn2', 'fn3']

我希望字符串以这样的形式结束SELECT * from some_database WHERE FirstName IN ('fn1', 'fn2', 'fn3'),其中列表中的每个元素在sql语句中成为自己的字符串。在Python中这是可能的吗?在


Tags: 字符串infromsqlnamessome语句firstname
1条回答
网友
1楼 · 发布于 2024-09-26 22:44:39

您可以使用^{}来完成此操作:

>>> sql_statement = """SELECT * from some_database WHERE FirstName IN {}"""
>>> first_names = ['fn1', 'fn2', 'fn3']
>>> 
>>> sql_statement.format(repr(tuple(first_names)))
"SELECT * from some_database WHERE FirstName IN ('fn1', 'fn2', 'fn3')"
>>> 

注意:虽然这只是一个普通字符串,但是由于SQL注入,因此要非常小心地将它用作SQL语句。一个更好的主意很可能是^{},或者在sqlapi库中使用等效的方法。在

相关问题 更多 >

    热门问题