python操作mysql时,sql语句中的变量处理有关问题

python操作mysql时,sql语句中的变量处理问题。
使用mysqldb来连接mysql,执行某sql语句,其中含有变量,如下,为何会报出错误?
value = [1,'aa']
table = "table1"
sql = "insert into "+table+" values(%s,%s)"
cursor.excute(sql,value)

或者如下:
value = ['table1',1,'aa']
cursor.excute("insert into %s values(%s,%s)",value)
也报出错误。

请问像这种变量形式应该怎么处理?

------解决方案--------------------
value不是关键字
sql里的values是关键字
用values(%s,%s) 而不是values(%d,%s)

比如 MySQLdb 
MySQLdb will convert it to a SQL literal value
http://mysql-python.sourceforge.net/MySQLdb.html