abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:00 | IT novinky

    Francouzský prezident Emmanuel Macron chce zakázat přístup na sociální sítě pro děti do 15 let. Francie podle něj tento krok udělá sama do několika měsíců, i pokud se na něm neshodnou další státy Evropské unie. Reaguje tak na úterní vraždu vychovatelky, kterou ve východofrancouzském městě Nogent pobodal 14letý mladík. Jednotlivé sociální sítě podle něj mají možnost věk ověřit a vymáhat zákaz pomocí systémů na rozpoznávání tváří.

    Ladislav Hagara | Komentářů: 5
    dnes 05:11 | IT novinky

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem zůstává El Capitan od HPE (Cray) s výkonem 1,742 exaFLOPS. Druhý Frontier má výkon 1,353 exaFLOPS. Třetí Aurora má výkon 1,012 exaFLOPS. Nejvýkonnější český počítač C24 klesl na 165 místo. Karolina, GPU partition klesla na 195. místo a Karolina, CPU partition na 421. místo. Další přehledy a statistiky na stránkách projektu.

    Ladislav Hagara | Komentářů: 0
    včera 22:33 | Nová verze

    Oficiálně byl vydán Android 16. Detaily na blogu a stránkách věnovaných vývojářům.

    Ladislav Hagara | Komentářů: 2
    včera 14:33 | Nová verze

    Byla vydána nová verze 14.3 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 14:00 | Upozornění

    CSIRT.CZ upozorňuje, že na základě rozhodnutí federálního soudu ve Spojených státech budou veškeré konverzace uživatelů s ChatGPT uchovávány. Včetně těch smazaných.

    Ladislav Hagara | Komentářů: 14
    včera 13:44 | Pozvánky

    Ač semestr ve škole právě končí, bastlíři ze studentského klubu Silicon Hill neodpočívají a opět se jako každý měsíc hlásí s pravidelným bastlířským setkáním Virtuální Bastlírna, kde si můžete s ostatními techniky popovídat jako u piva o novinkách, o elektronice, softwaru, vědě, technice obecně, ale také o bizarních tématech, která se za poslední měsíc na internetu vyskytla.

    Z novinek za zmínku stojí Maker Faire, kde Pájeníčko předvedlo … více »
    bkralik | Komentářů: 0
    včera 04:44 | Zajímavý software

    Na WWDC25 byl představen balíček Containerization a nástroj container pro spouštění linuxových kontejnerů na macOS. Jedná se o open source software pod licencí Apache 2.0 napsaný v programovacím jazyce Swift.

    Ladislav Hagara | Komentářů: 1
    včera 02:00 | IT novinky

    Do 16. června do 19:00 běží na Steamu přehlídka nadcházejících her Festival Steam Next | červen 2025 doplněná demoverzemi, přenosy a dalšími aktivitami. Demoverze lze hrát zdarma.

    Ladislav Hagara | Komentářů: 0
    9.6. 21:44 | IT novinky

    Apple na své vývojářské konferenci WWDC25 (Worldwide Developers Conference, keynote) představil řadu novinek: designový materiál Liquid Glass, iOS 26, iPadOS 26, macOS Tahoe 26, watchOS 26, visionOS 26, tvOS 26, nové funkce Apple Intelligence, …

    Ladislav Hagara | Komentářů: 5
    9.6. 20:44 | Komunita

    Organizátoři konference LinuxDays 2025, jež proběhne o víkendu 4. a 5. října 2025 v Praze na FIT ČVUT, spustili přihlašování přednášek (do 31. srpna) a sběr námětů na zlepšení.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (56%)
     (31%)
     (7%)
     (2%)
     (0%)
     (0%)
     (3%)
    Celkem 245 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: SQlite import csv v Pythonu

    5.4.2019 10:30 jsk | skóre: 10
    SQlite import csv v Pythonu
    Přečteno: 1158×
    Přílohy:
    Zdravím,
    vyzkoušel jsem asi 10 návodů a něco mi uniká :-(, nejsem sto v Pythonu3 korektně dostat csv soubor do databáze, max. poslední řádek. Ať už db, včetně tabulky, vytvořím samostatně nebo v rámci skriptu, kde importuji:-(. Můžete mne, prosím, nasměrovat, děkuji předem.
    Přikládám dvě ukázky csv souborů, odd
    Pepa

    Řešení dotazu:


    Odpovědi

    Řešení 1× (jsk (tazatel))
    5.4.2019 10:50 NN
    Rozbalit Rozbalit vše Re: SQlite import csv v Pythonu
    Hned prvni reseni na google:
    #!/usr/bin/python
    
    import csv, sqlite3
    
    con = sqlite3.connect(":memory:")
    cur = con.cursor()
    
    cur.execute("CREATE TABLE t (ID_zak,za_jmeno,za_ulice,za_mesto,za_telefon,za_mail,za_ucet);")
    
    with open('zak.csv', 'r') as fin:
            dr = csv.reader(fin)
            for row in dr:
                    to_db = [unicode(row[0],"utf8"),
                            unicode(row[1],"utf8"),
                            unicode(row[2],"utf8"),
                            unicode(row[3],"utf8"),
                            unicode(row[4],"utf8"),
                            unicode(row[5],"utf8"),
                            unicode(row[6],"utf8")]
                    con.execute("INSERT INTO t (ID_zak,za_jmeno,za_ulice,za_mesto,za_telefon,za_mail,za_ucet) VALUES (?,?,?,?,?,?,?);", to_db)
    
    
    con.commit()
    con.close()
    
    5.4.2019 11:24 jsk | skóre: 10
    Rozbalit Rozbalit vše Re: SQlite import csv v Pythonu
    Děkuji Vám,
    ":memory:" jsem nikdy nepoužil, pže jsem si data chtěl prohlédnout v DB Browser for SQLite, zda to vypadá dle potřeby a otestovat tam i SQL dotazy. S db začínám, takže mi takovéto "udělátko" pěkně slouží k odladění dotazů. Poradíte mi ještě jak přistupovat k datům v ":memory:". Nakonec DB Browser for SQLite není nutnost, určitě lze mezivýsledky dotazů zobrazit pohodlně jinou cestou.
    Ale musel jsem dělat chybu ještě v něčem jiném, podle uvedeného dotazu jsem postupoval (spíš se pokoušel), ale něco jsem tam zoslil, a pak pro oči neviděl co.
    Pepa
    Ilfirin avatar 6.4.2019 16:08 Ilfirin | skóre: 32 | blog: ilfblog | Liberec
    Rozbalit Rozbalit vše Re: SQlite import csv v Pythonu
    Data v memory zanikají ukončením scriptu. Nahraďtě nějakým souborem a v něm si norněte dle libosti.
    8.4.2019 16:43 .
    Rozbalit Rozbalit vše Re: SQlite import csv v Pythonu
    :memory: tam nehraje žádnou podstatnou roli. Když už to za tebe někdo jiný hledá, tak si to pak aspoň přečti.
    8.4.2019 22:13 jsk | skóre: 10
    Rozbalit Rozbalit vše Re: SQlite import csv v Pythonu
    Asi jsem se v předchozím nevyjádřil dostatečně přesně,
    Ale musel jsem dělat chybu ještě v něčem jiném, podle uvedeného dotazu jsem postupoval (spíš se pokoušel), ale něco jsem tam zoslil, a pak pro oči neviděl co.
    Takže ano, ačkoliv jsem odkaz znal, nefungovalo mi to :-(. Teď už vím, že problém byl v csv souboru, původně jsem chybovou hlášku přehlédl jako širé rodné lány :-(. Přiložený csv soubor je pouze fragmentem zdrojových dat. Některé záznamy v .ics souboru, z něhož je csv generován, se týkaly opakovaných událostí. Ty nebyly při úpravě textu dostatečně ošetřeny, resp. neměly se v kalendáři vůbec vyskytovat, proto se tato část úpravy ics měla řešit později.
    Nejsem profesionální programátor či vývojář, tak mne nekamenujte za nerozumné kroky, ptám se, abych se poučil a všem přispěvatelům děkuji.
    Zdraví Pepa
    8.4.2019 22:24 jsk | skóre: 10
    Rozbalit Rozbalit vše Re: SQlite import csv v Pythonu
    Ale za každé upozornění na chybu či nepřesnost jsem vděčný, vidím to jako jednu z možností jak se poučit.
    Pepa
    9.4.2019 10:08 jsk | skóre: 10
    Rozbalit Rozbalit vše Re: SQlite import csv v Pythonu
    Příloha:
    Ještě jednou díky, nemohu, ale stále dostat k fungující variantě s python3 viz
    python nn.py funguje,
    python3 nnn.py nefunguje,
    ./nnn.py také nefunguje; chnod 777 ./nnn.py jsem zadal;resp. funguje pokud v prvnímřádku smažu číslici 3.
    #!/usr/bin/python3
    
    import csv, sqlite3
    
    con = sqlite3.connect(":memory:")
    cur = con.cursor()
    
    cur.execute("CREATE TABLE tt (ID_zak,zak_jmeno,zak_ulice,zak_mesto,zak_telefon,zak_mail,zak_ucet);")
    
    with open('zak.csv', 'r') as zak:
            dr = csv.reader(zak)
            for row in dr:
                    to_db = [unicode(row[0],"utf8"),
                            unicode(row[1],"utf8"),
                            unicode(row[2],"utf8"),
                            unicode(row[3],"utf8"),
                            unicode(row[4],"utf8"),
                            unicode(row[5],"utf8"),
                            unicode(row[6],"utf8")]
                    con.execute("INSERT INTO tt (ID_zak,zak_jmeno,zak_ulice,zak_mesto,zak_telefon,zak_mail,zak_ucet) VALUES (?,?,?,?,?,?,?);", to_db)
    
    
    con.commit()
    con.close()
    Python 3 má problém s unicode, tedy spíš s tím mým kódem, nevidíte někdo místo kde jsem mimo, děkuji.
    Pepa
    9.4.2019 11:08 stenxp | skóre: 4
    Rozbalit Rozbalit vše Re: SQlite import csv v Pythonu
    Python3 už nemá problém s unicode tak ho nepoužívá, mělo by stačit narhadit všechny řádky unicode(row[x],"utf8") na row[x]
    9.4.2019 13:48 jsk | skóre: 10
    Rozbalit Rozbalit vše Re: SQlite import csv v Pythonu
    Děkuji moc, nějak jsem se v tom zacyklil :-( a bylo hotovo, doufám, že to časem bude lepší.
    Pepa

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.