这不是打印错误
r=[bounch of number]
的值,不知道有多少,结果的值是r
的名称
conn = sqlite3.connect('/home/cbbi-l2-16/Desktop/karim')
c = conn.cursor()
print ("Opened database successfully")
example = [r,result]
for row in c.executemany("INSERT INTO Entrez (PuId,Abstract) VALUES
(?,?)",(r,resul)):
print (row)
conn.commit()
c.close()
它给出了一个错误:
Traceback (most recent call last):
File "sqlpython.py", line 60, in <module>
for row in c.executemany("INSERT INTO Entrez (PuId,Abstract) VALUES (?,?)",(r,resul)):
sqlite3.ProgrammingError: Incorrect number of bindings supplied. The current statement uses 2, and there are 5 supplied.
这不是
executemany
的正确用法。您可以将其视为一个嵌套的for
循环,它迭代一个外部容器(表示查询),然后迭代表示要解包到查询中的数据的内部容器但是,在您的例子中,您只有一个列表,它可能包含字符串。因此,内部“for”循环开始解压缩字符串的字符:
这是
executemany
的实际用例,您希望在其中解压内部容器中的值:只需使用
execute
相关问题 更多 >
编程相关推荐