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 00:44 | Nová verze

    Byla vydána nová verze 3.22.0 grafického vývojového prostředí a platformy Gambas (Wikipedie) založené na interpretru programovacího jazyka Basic s rozšířením o objektově orientované programování. Přehled novinek v poznámkách k vydání. Zdrojové kódy jsou k dispozici na GitLabu.

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

    FreeBSD odstranilo poslední GPL kód ze základního systému. Konkrétně dpv, libdpv, libfigpar a dialog. Instalátor před čtyřmi lety přešel z dialogu na bsddialog.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Sociální síti 𝕏 (dříve Twitter) má dnes 20 let. Pro veřejnost byla zpřístupněna 15. července 2006.

    Ladislav Hagara | Komentářů: 1
    včera 14:22 | Zajímavý software

    Insula Faktury je open source generátor faktur, který běží přímo ve webovém prohlížeči. Žádná registrace, žádné sledování, žádné omezení. Zdrojové kódy jsou k dispozici na Codebergu.

    Ladislav Hagara | Komentářů: 5
    včera 13:22 | Komunita

    První Mobile Linux Hackday v Plzni, tj. komunitní setkání věnované Linuxu na mobilních zařízeních, proběhne 24. července od 10:00. Akce je otevřená všem zájemcům – od zvědavců po zkušené vývojáře. Dopoledne proběhnou přednášky Davida Heidelberga a Petra Hodiny o aktuálním stavu mobilního Linuxu: proč vůbec chtít tučňáka v kapse, jaké telefony jsou dnes dobře podporované a co taková podpora obnáší. Po obědě se zaměříme na konkrétní

    … více »
    Ladislav Hagara | Komentářů: 0
    14.7. 19:33 | Nová verze

    3D software Blender byl vydán ve verzi 5.2 s prodlouženou podporou. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    14.7. 16:55 | Zajímavý software

    SketchForge 3D (GitHub, reddit) je open source 3D editor / CAD běžící ve webovém prohlížeči bez nutnosti účtu nebo cloudového úložiště. Inspirovaný byl Tinkercadem. Doporučena je lokální instalace.

    Ladislav Hagara | Komentářů: 0
    14.7. 12:44 | Nová verze

    Byla vydána nová verze 11.9 webového prohlížeče Midori (Wikipedie, GitHub). S novým centrem ovládání, pokročilejším blokováním reklam, optimalizací výkonu…

    Ladislav Hagara | Komentářů: 0
    14.7. 04:22 | Zajímavý projekt

    Na Crowd Supply běží kampaň na podporu open source čtečky elektronických knih Open Book Touch. Postavena je na ESP32-S3. Má 4,26palcový dotykový e-papírový displej s rozlišením 480×800 pixelů, podsvícení, slot na microSD kartu. Cena je 149 dolarů a poštovné 12 dolarů. Dodání je plánováno na duben 2027.

    Ladislav Hagara | Komentářů: 8
    13.7. 18:00 | IT novinky

    Na Humble Bundle běží akce Linux: All the Things by O'Reilly a Picos, HATs, and More by Raspberry Pi Press. Elektronické knihy lze koupit se slevou a současně podpořit organizace Code for America a Raspberry Pi Foundation.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (31%)
     (4%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 2131 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: PERL - odstranění duplicit v poli a jejich spočítání

    5.12.2010 13:36 Pirkil
    PERL - odstranění duplicit v poli a jejich spočítání
    Přečteno: 626×
    Ahoj, učím se základy programování v PERLu a mám problém. Potřebuju napsat program na počítání písmen v textovém souboru. Došel jsem do fáze, kdy mám všechna písmena uložená v poli @abcd. (Je jich mnoho a opakují se.) Nyní potřebuju z pole dostat frekvenci jednotlivých písmen a uložit každé písmeno s jeho frekvencí do hashe. (Můžu to sice udělat tak, že dám vypsat prvky pole po řádcích, uložím výstup programu do textového souboru a potom zadám v shellu:

    sort soubor.txt | uniq -c

    ale, já bych chtěl posléze setřídit klíče hashe a udělat to celé v Perlu.)

    Díky moc za pomoc!

    Řešení dotazu:


    Odpovědi

    5.12.2010 14:17 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    to by melo resit neco v tomto smyslu:
    my $hash = {};
    foreach my $item (@array) {
     $hash->{$item}->{count}++;
    }
    
    Řešení 1× (buff)
    5.12.2010 14:18 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    vlastne by stacilo i $hash->{$item}++
    wamba avatar 6.12.2010 18:20 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    nemá to být $hash{$item}++ ?
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    wamba avatar 6.12.2010 18:22 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    odpovím si sám nemá, muselo by být my %hash místo my $hash
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    Řešení 1× (Pirkil (tazatel))
    5.12.2010 14:23 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    5.12.2010 19:35 Pirkil
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    Nakonec jsem to udělal pomocí funkce map. Četl jsem o ní už dřív, ale nevěděl jsem, jak se používá. Souvisí to s tím, že moc neznám funkci operátoru $_ . Experimentální cestou jsem na to přišel. :) Díky za pomoc!
    5.12.2010 21:50 Jirka P
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    Když už si hrát s mapem, proč to neudělat takto:
    my %counts=(map {($_, 0)} @arr);
    keys %counts;
    6.12.2010 01:21 Pirkil
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    ...chtěl jsem říct funkci speciální proměnné... :)

    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.