Sé cómo asignar una lista a una cadena:
foostring = ",".join( map(str, list_of_ids) )
Y sé que puedo usar lo siguiente para incluir esa cadena en una cláusula IN:
cursor.execute("DELETE FROM foo.bar WHERE baz IN ('%s')" % (foostring))
Lo que necesito es lograr lo mismo de manera SEGURA (evitando la inyección de SQL) usando MySQLDB. En el ejemplo anterior, debido a que foostring no se pasa como argumento para ejecutar, es vulnerable. También tengo que citar y escapar fuera de la biblioteca mysql.
(Hay una pregunta SO relacionada , pero las respuestas enumeradas allí no funcionan para MySQLDB o son vulnerables a la inyección de SQL).