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 04:11 | Komunita

    Fedora je od 10. února dostupná v Sýrii. Sýrie vypadla ze seznamu embargovaných zemí a Fedora Infrastructure Team mohl odblokovat syrské IP adresy.

    Ladislav Hagara | Komentářů: 6
    dnes 03:44 | Zajímavý projekt

    Ministerstvo zahraničí Spojených států amerických vyvíjí online portál Freedom.gov, který umožní nejenom uživatelům v Evropě přístup k obsahu blokovanému jejich vládami. Portál bude patrně obsahovat VPN funkci maskující uživatelský provoz tak, aby se jevil jako pocházející z USA. Projekt měl být původně představen již na letošní Mnichovské bezpečnostní konferenci, ale jeho spuštění bylo odloženo.

    NUKE GAZA! 🎆 | Komentářů: 3
    dnes 03:33 | Komunita

    Byla vydána pro lidi zdarma ke stažení kniha The Book of Remind věnovaná sofistikovanému kalendáři a připomínači Remind.

    Ladislav Hagara | Komentářů: 0
    včera 23:55 | Nová verze

    Grafický editor dokumentů LyX, založený na TeXu, byl vydán ve verzi 2.5.0. Oznámení připomíná 30. výročí vzniku projektu. Novinky zahrnují mj. vylepšení referencí nebo použití barev napříč aplikací, od rozhraní editoru po výstupní dokument.

    |🇵🇸 | Komentářů: 0
    včera 15:00 | Komunita

    F-Droid bannerem na svých stránkách a také v aplikacích F-Droid a F-Droid Basic upozorňuje na iniciativu Keep Android Open. Od září 2026 bude Android vyžadovat, aby všechny aplikace byly registrovány ověřenými vývojáři, aby mohly být nainstalovány na certifikovaných zařízeních Android. To ohrožuje alternativní obchody s aplikacemi jako F-Droid a možnost instalace aplikací mimo oficiální obchod (sideloading).

    Ladislav Hagara | Komentářů: 21
    20.2. 16:33 | Nová verze

    Svobodná historická realtimová strategie 0 A.D. (Wikipedie) byla vydána ve verzi 28 (0.28.0). Její kódový název je Boiorix. Představení novinek v poznámkách k vydání. Ke stažení také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    20.2. 04:44 | Nová verze

    Multimediální server a user space API PipeWire (Wikipedie) poskytující PulseAudio, JACK, ALSA a GStreamer rozhraní byl vydán ve verzi 1.6.0 (Bluesky). Přehled novinek na GitLabu.

    Ladislav Hagara | Komentářů: 1
    20.2. 01:11 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-1.2 a 20.04 OTA-12.

    Ladislav Hagara | Komentářů: 0
    19.2. 18:00 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.0 otevřeného operačního systému pro chytré hodinky AsteroidOS (Wikipedie). Přehled novinek v oznámení o vydání a na YouTube.

    Ladislav Hagara | Komentářů: 1
    19.2. 16:00 | Zajímavý software

    WoWee je open-source klient pro MMORPG hru World of Warcraft, kompatibilní se základní verzí a rozšířeními The Burning Crusade a Wrath of the Lich King. Klient je napsaný v C++ a využívá vlastní OpenGL renderer, pro provoz vyžaduje modely, grafiku, hudbu, zvuky a další assety z originální kopie hry od Blizzardu. Zdrojový kód je na GitHubu, dostupný pod licencí MIT.

    NUKE GAZA! 🎆 | Komentářů: 7
    Které desktopové prostředí na Linuxu používáte?
     (18%)
     (6%)
     (0%)
     (11%)
     (27%)
     (2%)
     (5%)
     (2%)
     (12%)
     (26%)
    Celkem 928 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    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: 1223×
    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.