in saveData2DB
values(%s)'''%','.join(data)
TypeError: sequence item 2: expected str instance, list found
def saveData2DB(datalist,dbpath):
init_db(dbpath)
conn = sqlite3.connect(dbpath)
cur = conn.cursor()
for data in datalist:
for index in range(len(data)):
data[index] = '"' + data[index] + '"'
sql = '''insert into movie250(
info_link,pic_link,cname,ename,score,rated,instroduction,info)
values(%s)'''%",".join(data)
print(sql)
# cur.execute(sql)
# conn.commit()
cur.close()
conn.close()
亲测有效
values (%s)'''%",".join('%s' %i for i in data)
引号使用不对吧,最好把后面拼接的值先用变量接收下 再 用%变量名 这种 , 推荐使用format形式
看起来你的 ",".join(data)里的data并不是列表而是字符串,建议你把for遍历直接删掉,换成这样试一下,我是不知道你的datalist的数据的,所以也不太确定。
sql = '''insert into movie250(
info_link,pic_link,cname,ename,score,rated,instroduction,info)
values(%s)'''%",".join(datalist)
print(sql)