在数据库 Python 中插入列表列表

我正在尝试在数据库中插入列表列表,但出现此错误“cursor.execute('INSERT INTO Test VALUES(?, ?, ?)',list2) sqlite3.ProgrammingError: 提供的绑定数量不正确。当前语句使用 3,并且提供了 200 个。” 在我的列表列表中有 201 个列表


import sqlite3

import csv

import pandas as pd

def Load():

    list1 = []

    comparar = []

    conexion = sqlite3.connect("Pruebas")

    cursor = conexion.cursor()

    cursor.execute('CREATE TABLE IF NOT EXISTS Test ( "id" INT NOT NULL , "User" TEXT NOT NULL , "Followed" INT NOT NULL , PRIMARY KEY (id))')

    cursor.execute("SELECT * FROM Test")

    list1 = cursor.fetchall()

    #print(data)    

    data = pd.read_csv(r'J:\\Proyectos y Trabajos\\Python\\Bot Instagram Follow\\Terminado BR\\Test.csv',delimiter=';')

    tuples = [tuple(x) for x in data.values]

    

    for i in tuples:

        if i not in list1:

            list1.append(i)

    list2 = [list(elem) for elem in list1]

    

    cursor.execute("DELETE FROM Test") 

    conexion.commit() 

    cursor.execute('INSERT INTO Test VALUES(?, ?, ?)',list2)

    conexion.commit() 

    conexion.close()

Load()


喵喵时光机
浏览 329回答 1
1回答

SMILET

迭代list2并对每个子列表中的值执行插入:for sublist in list2:    cursor.execute('INSERT INTO Test VALUES(?, ?, ?)', sublist)connexion.commit()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python