cur.execute(
"""
DELETE from item
WHERE NOT name IN (?);
"""
(names,)
)
# вместо "?" должно подставится неизвестное количество параметров
placeholders = ", ".join(["?"] * len(names))
sql = f"DELETE FROM item WHERE NOT name IN ({placeholders})"
cur.execute(sql, names)