pythonsqlite3-如何制定一个条件,检查表中的属性是否是列表中的元素之一

pythonsqlite3-如何制定一个条件,检查表中的属性是否是列表中的元素之一,python,list,sqlite,Python,List,Sqlite,假设我有一个名为my_list 仅当data列中的值出现在my_列表中时,我才想从test表中获取行 假设的代码如下 import sqlite3 as lite conn = lite.connect ('database.db') with conn: conn.row_factory = lite.Row curr = conn.cursor () curr.execute ('''select * from test w

假设我有一个名为
my_list

仅当
data
列中的值出现在
my_列表中时,我才想从
test
表中获取行

假设的代码如下

import sqlite3 as lite

conn = lite.connect ('database.db')
with conn:
    conn.row_factory = lite.Row
    curr = conn.cursor ()
    curr.execute ('''select * from test
                     where data in :list''', {'list': my_list}) //I know this is not the correct syntax

那么,如何在Python中解决以下问题呢?

首先构建查询字符串,然后将列表作为参数传入执行它

query = 'select * from test where data in ({})'.format(','.join(['?']*len(my_list)))
curr.execute(query, my_list)