python sqlite executemany statement error: ValueError: parameters are of unsupported type

python sqlite executemany statement error: ValueError: parameters are of unsupported type

我想做的事情看起来应该非常简单,但我就是无法克服我遇到的错误。基本上,我创建了一个列表,创建了一个数据库 table 然后想将列表的元素插入到 table 中。这是我得到的:

F_wheel_data = [1,3,1,3,1,3,1,3,1,3,2,1,3,1,3,1,3,1,3,1,3,4]
curs.execute('CREATE TABLE F_wheel (url_num INTEGER NOT NULL)')
curs.executemany('INSERT INTO F_wheel VALUES (?)', F_wheel_data)

我得到的错误是:

curs.executemany('INSERT INTO F_wheel VALUES (?)', F_wheel_data)
ValueError: parameters are of unsupported type

什么给了?

看起来 executemany() 采用元组列表,而不是整数列表。

我不是 SQL 专家,但我会尝试:

F_wheel_data = [(1),(3),(1),(3),...,(4)]

查看 this documenation 寻找 executemany(),您需要传递一个元组列表。

F_wheel_data = [1,3,1,3,1,3,1,3,1,3,2,1,3,1,3,1,3,1,3,1,3,4]
F_wheel_data = [(i,) for i in F_wheel_data]