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í
×

včera 13:33 | Pozvánky

Byly stanoveny termíny konferencí LinuxDays 2017 a OpenAlt 2017. Letošní LinuxDays proběhne o víkendu 7. a 8. října v Praze v Dejvicích v prostorách FIT ČVUT. Letošní OpenAlt proběhne o víkendu 4. a 5. listopadu na FIT VUT v Brně.

Ladislav Hagara | Komentářů: 0
včera 11:11 | Komunita

Jiří Eischmann z desktopového týmu Red Hatu se v příspěvku Linuxový desktop: Co vám chybí na svém blogu ptá, co uživatele na Fedora Workstation a na linuxovém desktopu obecně trápí a co by desktopový tým mohl zlepšit. Pokud máte nějaké podněty, napište mu je do komentářů.

Ladislav Hagara | Komentářů: 66
včera 03:33 | Nová verze

Byla vydána nová verze 0.25.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Z novinek lze zmínit například podporu DVB-T2. Další části mpv byly přelicencovány z GPLv2 nebo novější na LGPLv2.1 nebo novější (#2033).

Ladislav Hagara | Komentářů: 0
včera 02:22 | Zajímavý projekt

Na Bundle Stars byla spuštěna akce Dollar Forever Bundle. Za 1 dolar lze získat 24 počítačových her bežících na platformě Steam také v Linuxu.

Ladislav Hagara | Komentářů: 2
24.4. 23:44 | Zajímavý software

Lychee je jedním z open source softwarů pro tvorbu webových fotoalb. Vyžadováno je PHP 5.5 nebo novější a MySQL. Ukázka na stránkách projektu. Zdrojové kódy jsou k dispozici na GitHubu pod open source licencí MIT [reddit].

Ladislav Hagara | Komentářů: 6
24.4. 22:22 | Zajímavý software

Společnosti Haivision a Wowza společně oznámily vznik SRT Alliance a otevření protokolu pro streamování videa SRT. Podrobnosti v FAQ. Zdrojové kódy SRT jsou k dispozici na GitHubu pod open source licencí LGPLv2.1.

Ladislav Hagara | Komentářů: 0
24.4. 12:33 | Humor

Byl vydán remake filmu Ghost in the Shell. Tentokrát v Bashi. Zhlédnout lze online na "ssh ghost@theshell.xyz" [Hacker News].

Ladislav Hagara | Komentářů: 16
23.4. 20:40 | Zajímavý článek

Lukáš Růžička v článku S Hydrogenem za lepší rytmus aneb bubeníkem snadno a rychle na MojeFedora.cz představuje automatického bubeníka s názvem Hydrogen (Wikipedie): Hydrogen je velmi vydařený program, který rozhodně nesmí chybět ve výbavě žádného linuxového muzikanta. Umožňuje nejen vytváření jednoduchých bicích doprovodů, ale také sofistikované programování bicích a perkusí, jehož výsledek se naprosto vyrovná drahým

… více »
Ladislav Hagara | Komentářů: 18
23.4. 13:55 | Zajímavý projekt

UPSat (Twitter) je první open source nanodružice (CubeSat). Jedná se o společný projekt nadace Libre Space Foundation a University of Patras. Repozitáře projektu jsou k dispozici na GitHubu. Pod Libre Space Foundation patří také projekt SatNOGS (zprávička), projekt globální sítě open source pozemních satelitních stanic, vítězný projekt soutěže The Hackaday Prize 2014. UPSat je součástí mise QB50 (Twitter). ID UPSatu je GR02. GPS přijímač na UPSatu je od české společnosti SkyFox Labs. Součástí mise QB50 je i česká nanodružice VZLUSAT-1 s ID CZ02.

Ladislav Hagara | Komentářů: 5
21.4. 15:00 | Komunita

V diskusním listu Thunderbird planning vývojáři poštovního klienta Thunderbird řeší, zda by nebylo možné budoucí Thunderbird postavit nad webovými technologiemi, tj. nad Electronem, stejně jako například Nylas Mail. Gecko, nad kterým je Thunderbird postaven, se má hodně změnit. V plánu je odstranění vlastností, které Firefox už nepotřebuje, ale Thunderbird je na nich závislý [Hacker News, reddit].

Ladislav Hagara | Komentářů: 103
Chystáte se pořídit CPU AMD Ryzen?
 (4%)
 (34%)
 (1%)
 (7%)
 (45%)
 (10%)
Celkem 303 hlasů
 Komentářů: 43, poslední dnes 02:36
    Rozcestník

    Dotaz: jak na efektivni vstup v pythonu?

    13.12.2005 12:08 Martin Beránek | skóre: 33 | blog: mousehouse | Brno
    jak na efektivni vstup v pythonu?
    Přečteno: 46×

    zdravím, v pythonu začínám a nemám takový přehled o jazyce a knihovnách

    Řešil jsem problém s parsováním textového vstupu (text oddělený rourama, ale na každém řádku jiný počet sloupců a také některé položky obsahovaly znak '\r') - takže celkem legrace

    Jeden "blok" (nebudu říkat řádek, protože to není prvada) vypadá třeba takhle:

    |START|ahoj |  text|zase
    nejaky   text
       ktery je docela
     dlouhy| polozka|STOP|
    

    základní smyčka programu načítá tento jeden blok (jediné co vím, že začíná přesně |START| a končí přesně |STOP|) pomocí sys.stdin.read(1). jednotlivé položky ukládám do pole, které po přečtení jednoho bloku zpracuji a vyhodím na výstup

    dneska sem ale zjistil, ze na vstupu budou asi 4GB (pri soucasnem vykonu by to trvalo asi 8h), takze: jak zefektivnit vstup? (docela by to chtelo :-) )/p>

    never use rm after eight

    Odpovědi

    13.12.2005 12:37 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: jak na efektivni vstup v pythonu?
    jednotlivé položky ukládám do pole, které po přečtení jednoho bloku zpracuji a vyhodím na výstup
    Otázka zní jinak, co to znamená zpracuje? Je možné zpracovat jeden token a ihned ho vypsat, nebo je potřeba mít celý soubor načtený v poli a až potom zpracovávat? Je možné třeba pustit čtení v jednom vláknu a zpracovávání (po načtení nějakého minimálního vstupu) ve druhém?

    BTW: pokud je výkon kritický a budeš zpracovávat 4GB soubory, poohlédl bych se spíše po C.
    When your hammer is C++, everything begins to look like a thumb.
    13.12.2005 13:02 Martin Beránek | skóre: 33 | blog: mousehouse | Brno
    Rozbalit Rozbalit vše Re: jak na efektivni vstup v pythonu?
    jak sem psal:
    které po přečtení jednoho bloku zpracuji a vyhodím na výstup
    asi sem se zeptal spatne: jak moc je v pythonu efektivni sys.stdin.read(1) ?

    ja jsem spise javista... takze do Ccka bych se vubec nehrnul :-) - radeji mam jazyky vyssi urovne
    never use rm after eight
    13.12.2005 15:20 Michal Vyskočil | skóre: 60 | blog: miblog | Praha
    Rozbalit Rozbalit vše Re: jak na efektivni vstup v pythonu?
    Jde mi o to, zda se do pole blok (4GB blok?) neukládá zbytečně a nedá se hned poslat na výstup. Mě z tvého popisu napadlo, že kód většinu času tráví ukládáním po paměti a tím zpracováváním - chtělo by to profilovat.

    Jinak efektivitu sys.stdin.read(1) si můžeš snadno změřit (a porovnat třeba s Perlem, Javou, ...) přiznám se, že by mě výsledky zajímaly.
    $ seq 1000000 > milion.txt
    $cat read
    #!/usr/bin/python
    
    import sys
    while (sys.stdin.read(1)):
      pass
    
    $ time cat milion.txt | ./read
    
    real    0m13.338s
    user    0m13.233s
    sys     0m0.068s
    
    When your hammer is C++, everything begins to look like a thumb.
    13.12.2005 15:50 Martin Beránek | skóre: 33 | blog: mousehouse | Brno
    Rozbalit Rozbalit vše Re: jak na efektivni vstup v pythonu?
    dělám chybu a vím o tom:

    základní pravidlo optimalizace: neoptimalizovat... a asi u toho zůstanu... bez profilovacího nástroje stejne nevim kde mi to zere cas, takze...

    spise sem cekal jestli se nekdo neozve treba takhle: no fuj, nacitat to po znacich, to je ale prasarna - nikdo se takhle neozval, tudiz povazuji tuhle metodu za beznou (at je nebo neni efektivni) - treba v jave se to realizuje pomoci BufferedReader a ten zajistuje efektivnejsi vyuziti zarizeni
    never use rm after eight
    13.12.2005 13:04 Martin Beránek | skóre: 33 | blog: mousehouse | Brno
    Rozbalit Rozbalit vše Re: jak na efektivni vstup v pythonu?
    jinak v jave s vlaknama bezne delam, ale -- jak sem psal -- v pythonu zacinam, tak se do vlaken asi pustet nebudu (na srozumitelnstoi programu to asi moc neprida), a asi to ani nema v tomhle pripade cenu
    never use rm after eight
    13.12.2005 19:34 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: jak na efektivni vstup v pythonu?
    Jestliže jsi vše pečlivě napsal v Pythonu, funguje to, je to pomalé a nedá se s tím nic dělat, tak je jediná možnost naprogramovat to v C a udělat binding do Pythonu (jestli chceš zůstat u jazyka vyšší úrovně).

    Python je přímo na tohle stavěný. Velmi pohodlně se v něm píše, ale kritické části lze napsat v C, přičemž "python C API" je poměrně jednoduché. Tím spojuje výhody obou přístupů.

    I kdyby byl Python stokrát pomalejší než C, tak při osmihodinovém běhu Pythonovského programu to představuje pět minut v C. Myslím, že něco je špatně bez ohledu na výběr jazyka ...

    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.