您需要创建足够的参数以匹配您的vars列表:
statement = "SELECt * FROM tab WHERe obj IN ({0})".format(', '.join(['?'] * len(list_of_vars)))c.execute(statement, list_of_vars)请注意,您将传入
list_of_vars作为参数值列表。使用,
','.join()我们生成
?由逗号分隔的字符串,然后用于
.format()将其插入语句中。
对于一长串变量,使用临时表保存这些值,然后
JOIN对临时表使用a而不是
IN具有绑定参数的子句,可能会更有效。



