比较两个列表并添加非重复列表

2024-06-13 18:50:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须将表保存到列表中,然后读取csv或excel文件,相互比较并添加非重复项

import sqlite3
import csv
import pandas as pd

def Load():
    comparar = []
    data = []
    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 User FROM Test")
    list1 = cursor.fetchall()
    """with open('Test.csv', newline='') as f:
        reader = csv.reader(f)
        data = list(reader)"""
    for i in list1:
        ''.join(i)

    df = pd.read_excel(r'Test.xlsx')
    data = df['User'].tolist()
    for i in data:
        if i not in list1:
            list1.append(i)
    print(list1)

Load()

但我得到的结果是:

[('mostruoataca',), ('mosunoficial',), ('mota_matias_leyera',), ('motonetasclasicas.arg',), ('motor_almaisangre_',), ('motor_pop',), ('motriman',), ('motuproprio__',), ('motxels',), ('mou.nico',), ('mouad.anni',), ('moucho.records',), ('mouesca',), ('mountainbloommusic',), ('mourena.mr',), ('mouriotgrrrl',), ('moussouignacio',), ('moutonnoir.magic',), ('mouty8',), ('movacelclavijo',), ('movidagd',), ('movidapromovidadjs',), ('movilbus_cinema',), ('movistar.telefonica2020',), ('moxi.albornoz',), ('moyaesteban.2015',), ('moyanoflorencia002',), ('moyanovsky',), ('moyrmz',), ('mozartrecycled',), ('mp_valor',), ('mpasache',), ('mpaulcol',), ('mpaulitagarcia',), ('mpautri',), ('mpazcoya',), ('mpazlozanoc',), ('mpcata',), ('mpchedetra',), ('mpdginfo',), ('mpfh_',), ('mphotography_5',), ('mpiaalabarse',), ('mpiaoliva',), ('mpilinf',), ('mppia',), ('mptimon11',), ('mpumusicauruguaya',), ('mq.acosta',), ('mqttt_',), ('mr._.note',), ('mr._lion',), ('mr.briche',), ('mr.eimtiem',), ('mr.gonsa',), ('mr.juanitobanana',), ('mr.pacore',), ('mr.pi_thedrummer',), ('mr.selena',), ('mr.squires',), ('mr.toxic.jc',), ('mr.xicooficial',), ('mr_attimoh',), ('mr_colinfarler',), ('mr_di3guit0',), ('mr_elien',), ('mr_gaab',), ('mr_krimson_rock',), ('mr_m1303',), ('mr_paul_danger',), ('mr_urns',), ('mr_vintageship',), ('mr4everaguitarist',), ('mra.pulg4',), ('mralienrock',), ('mrbesson1978',), ('mrcormack.b',), ('mrcsperalta_',), ('mrdavihs',), ('mrdear86',), ('mrdiegoberlyn',), ('mrfaty_20',), ('mrgalope',), ('mrgasedu',), ('mrgatex',), ('mrhydesound',), ('mrka3b',), ('mrln_gomz',), ('mrmeezeekiel',), ('mrmusiconline',), ('mrndnlyl',), ('mroczekmara',), ('mrojaslorenzo',), ('mrqzcharles',), ('mrs.punx',), ('mrs.sgt.peppers',), ('mrs_fearsanytime',), ('mrsmarianaf',), ('mrsz66',), ('mrt_sp',), ('mrtin.sanchz.b',), ('mrtnabrate',), ('mrtnccht',), ('mrtnz.96',), ('mruizbochides',), ('mrvinruth',), ('mrxtbn',), ('mrymarll',), ('ms.aceituna',), ('ms.cocinavegana',), ('ms.kle',), ('ms.mizzes',), ('ms_leto',), ('msalivi',), ('msanchezfarina',), ('msantallag',), ('msantosbea',), ('mshels',), ('msirennol',), ('msolbulgarella',), ('msolricci',), ('msosamoli',), ('msp_abogados_',), ('msplendorehotmaik.c',), ('msuare21',), ('mswd.khrwshwy',), ('msweirdbug',), ('mtbndsk',), ('mtccaro',), ('mtcho',), ('mte.enradio',), ('mteff77',), ('mtmfsd',), ('mtn.sabattini',), ('mtrigo28',), ('mtrinidad.__',), ('mtsrey10',), ('mtthwpodcast',), ('mua_saturnina',), ('muackverona5562',), ('muchachacontachas',), ('muchachaojosdepapel_',), ('muchachaojosdepapelll',), ('muchmusicla',), ('muchosmichos',), ('muchosmokepuro',), ('muciclos',), ('muctarubellay191',), ('mud_insta',), ('mudanzas_la_mudadora',), ('mudblood_epl',), ('muebles_coliseo',), ('mueblesunicos1983',), ('muekadeco',), ('muenster.mash',), ('mueranhumanos',), ('muerte_a_la_grasa',), ('muertealpan',), ('muffinztyle',), ('muisgu_lips',), ('mujer_luna192029',), ('mujerestrazan',), ('mulasoler',), ('mulinian4',), ('mulitafilms',), ('muller_ivan',), ('muls77',), ('multiespectral',), ('multiple.music',), ('multisonica.ok',), ('muma_aguilar',), ('mumabset',), ('mumamundo',), ('munamusica',), ('munaycu',), ('munchies.alot',), ('mund0_n4tural',), ('mundanarocanroll',), ('mundial_argentina_2018',), ('mundialmente',), ('mundo.marketin',), ('mundo_dukossj07',), ('mundo_inmundo',), ('mundo_stereo',), ('mundo_wine',), ('mundocarmeli',), ('mundocerati',), ('mundoimo',), ('mundolimpioquimica',), ('mundopaez',), ('mundosurfm',), ('mundounderrock',), ('muniecagalacticaoficial',), ('munoz_jhonier',), ('munozricardo1030',), ('muntanero',), ('muratoreale',), ('murcianaa_',), ('murciasound',), ('murciatattoos',), 'mostruoataca', 'mosunoficial', 'mota_matias_leyera', 'motonetasclasicas.arg', 'motor_almaisangre_', 'motor_pop', 'motriman', 'motuproprio__', 'motxels', 'mou.nico', 'mouad.anni', 'moucho.records', 'mouesca', 'mountainbloommusic', 'mourena.mr', 'mouriotgrrrl', 'moussouignacio', 'moutonnoir.magic', 'mouty8', 'movacelclavijo', 'movidagd', 'movidapromovidadjs', 'movilbus_cinema', 'movistar.telefonica2020', 'moxi.albornoz', 'moyaesteban.2015', 'moyanoflorencia002', 'moyanovsky', 'moyrmz', 'mozartrecycled', 'mp_valor', 'mpasache', 'mpaulcol', 'mpaulitagarcia', 'mpautri', 'mpazcoya', 'mpazlozanoc', 'mpcata', 'mpchedetra', 'mpdginfo', 'mpfh_', 'mphotography_5', 'mpiaalabarse', 'mpiaoliva', 'mpilinf', 'mppia', 'mptimon11', 'mpumusicauruguaya', 'mq.acosta', 'mqttt_', 'mr._.note', 'mr._lion', 'mr.briche', 'mr.eimtiem', 'mr.gonsa', 'mr.juanitobanana', 'mr.pacore', 'mr.pi_thedrummer', 'mr.selena', 'mr.squires', 'mr.toxic.jc', 'mr.xicooficial', 'mr_attimoh', 'mr_colinfarler', 'mr_di3guit0', 'mr_elien', 'mr_gaab', 'mr_krimson_rock', 'mr_m1303', 'mr_paul_danger', 'mr_urns', 'mr_vintageship', 'mr4everaguitarist', 'mra.pulg4', 'mralienrock', 'mrbesson1978', 'mrcormack.b', 'mrcsperalta_', 'mrdavihs', 'mrdear86', 'mrdiegoberlyn', 'mrfaty_20', 'mrgalope', 'mrgasedu', 'mrgatex', 'mrhydesound', 'mrka3b', 'mrln_gomz', 'mrmeezeekiel', 'mrmusiconline', 'mrndnlyl', 'mroczekmara', 'mrojaslorenzo', 'mrqzcharles', 'mrs.punx', 'mrs.sgt.peppers', 'mrs_fearsanytime', 'mrsmarianaf', 'mrsz66', 'mrt_sp', 'mrtin.sanchz.b', 'mrtnabrate', 'mrtnccht', 'mrtnz.96', 'mruizbochides', 'mrvinruth', 'mrxtbn', 'mrymarll', 'ms.aceituna', 'ms.cocinavegana', 'ms.kle', 'ms.mizzes', 'ms_leto', 'msalivi', 'msanchezfarina', 'msantallag', 'msantosbea', 'mshels', 'msirennol', 'msolbulgarella', 'msolricci', 'msosamoli', 'msp_abogados_', 'msplendorehotmaik.c', 'msuare21', 'mswd.khrwshwy', 'msweirdbug', 'mtbndsk', 'mtccaro', 'mtcho', 'mte.enradio', 'mteff77', 'mtmfsd', 'mtn.sabattini', 'mtrigo28', 'mtrinidad.__', 'mtsrey10', 'mtthwpodcast', 'mua_saturnina', 'muackverona5562', 'muchachacontachas', 'muchachaojosdepapel_', 'muchachaojosdepapelll', 'muchmusicla', 'muchosmichos', 'muchosmokepuro', 'muciclos', 'muctarubellay191', 'mud_insta', 'mudanzas_la_mudadora', 'mudblood_epl', 'muebles_coliseo', 'mueblesunicos1983', 'muekadeco', 'muenster.mash', 'mueranhumanos', 'muerte_a_la_grasa', 'muertealpan', 'muffinztyle', 'muisgu_lips', 'mujer_luna192029', 'mujerestrazan', 'mulasoler', 'mulinian4', 'mulitafilms', 'muller_ivan', 'muls77', 'multiespectral', 'multiple.music', 'multisonica.ok', 'muma_aguilar', 'mumabset', 'mumamundo', 'munamusica', 'munaycu', 'munchies.alot', 'mund0_n4tural', 'mundanarocanroll', 'mundial_argentina_2018', 'mundialmente', 'mundo.marketin', 'mundo_dukossj07', 'mundo_inmundo', 'mundo_stereo', 'mundo_wine', 'mundocarmeli', 'mundocerati', 'mundoimo', 'mundolimpioquimica', 'mundopaez', 'mundosurfm', 'mundounderrock', 'muniecagalacticaoficial', 'munoz_jhonier', 'munozricardo1030', 'muntanero', 'muratoreale', 'murcianaa_', 'murciasound', 'murciatattoos', 'rodrigo_petrizzo']

Tags: csvtestimportdatanotnullcursorla
1条回答
网友
1楼 · 发布于 2024-06-13 18:50:00
import sqlite3
import pandas as pd
def Load():
    list1 = []
    list3 = []
    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 id, User FROM Test")
    list1 = cursor.fetchall()  
    data = pd.read_csv(r'J:\\Proyectos y Trabajos\\Python\\Bot Instagram Follow\\Terminado BR\\Test.csv',delimiter=';')
    df = pd.DataFrame(data, columns=['id','User'])
    tuples = [tuple(x) for x in df.values]

    for i in tuples:
        if i not in list1:
            list3.append(i)
        

    list2 = [list(elem) for elem in list3]   
    for sublist in list2:
        cursor.execute('INSERT INTO Test VALUES(?, ?, 0)', sublist)     
    conexion.commit()
    conexion.close()
Load()

相关问题 更多 >