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 15:33 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.8.

    Ladislav Hagara | Komentářů: 3
    včera 14:22 | IT novinky

    Herní studio Hangar 13 vydalo novou Mafii. Mafia: Domovina je zasazena do krutého sicilského podsvětí na začátku 20. století. Na ProtonDB je zatím bez záznamu.

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

    Operátor O2 má opět problémy. Jako omluvu za pondělní zhoršenou dostupnost služeb dal všem zákazníkům poukaz v hodnotě 300 Kč na nákup telefonu nebo příslušenství.

    Ladislav Hagara | Komentářů: 7
    včera 05:55 | IT novinky

    Společnost OpenAI představila GPT-5 (YouTube).

    Ladislav Hagara | Komentářů: 1
    včera 05:00 | Nová verze

    Byla vydána (𝕏) červencová aktualizace aneb nová verze 1.103 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.103 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    7.8. 17:33 | IT novinky

    Americký prezident Donald Trump vyzval nového generálního ředitele firmy na výrobu čipů Intel, aby odstoupil. Prezident to zdůvodnil vazbami nového šéfa Lip-Bu Tana na čínské firmy.

    Ladislav Hagara | Komentářů: 8
    7.8. 16:55 | Nová verze

    Bylo vydáno Ubuntu 24.04.3 LTS, tj. třetí opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.

    Ladislav Hagara | Komentářů: 0
    7.8. 16:44 | Nová verze

    Byla vydána verze 1.89.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    7.8. 12:22 | IT novinky

    Americká technologická společnost Apple uskuteční v USA další investice ve výši sta miliard dolarů (2,1 bilionu korun). Oznámil to ve středu šéf firmy Tim Cook při setkání v Bílém domě s americkým prezidentem Donaldem Trumpem. Trump zároveň oznámil záměr zavést stoprocentní clo na polovodiče z dovozu.

    Ladislav Hagara | Komentářů: 5
    7.8. 04:55 | Nová verze

    Zálohovací server Proxmox Backup Server byl vydán v nové stabilní verzi 4.0. Založen je na Debianu 13 Trixie.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (47%)
     (21%)
     (4%)
     (5%)
     (3%)
     (1%)
     (1%)
     (18%)
    Celkem 315 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: Python : regulární výraz a pole

    Martin Stiborský avatar 12.11.2006 12:11 Martin Stiborský | skóre: 26 | blog: Stibiho bláboly | Opava
    Python : regulární výraz a pole
    Přečteno: 627×
    Ahojte, do proměnné si ukládám pole které získám přes os.listdir()
    A teď bych toho pole potřeboval prohnat přes regulární výraz, ale vůbec se nedaří, nevím jak na to, když odkážu na proměnou,dostanu error
    TypeError: expected string or buffer

    Takže tudy cesta nevede,prosím o požďuchnutí ... dík moc
    Kvík ..

    Odpovědi

    12.11.2006 12:27 rajcze | skóre: 6 | blog: rajcze | kus od Brna
    Rozbalit Rozbalit vše Re: Python : regulární výraz a pole
    ahoj,
    ta chyba prece mluvi jasne - regexp ocekava parametr "typu" string nebo buffer a ty se mu snazis nacpat pole. Takze pokud chces z toho pole vybrat nejaky polozky na zaklade regexpu, dela se to treba takhle:
    import os, re
    regexp=re.compile("nejaky regexp")
    pole_out=filter(regexp.search, os.listdir("./"))
    print pole_out
    
    Rules of Optimization: Rule 1: Don't do it. Rule 2 (for experts only): Don't do it yet.
    Martin Stiborský avatar 12.11.2006 13:11 Martin Stiborský | skóre: 26 | blog: Stibiho bláboly | Opava
    Rozbalit Rozbalit vše Re: Python : regulární výraz a pole
    fajn, dík moc, tušil jsem, že tam budou nějaké kejkle s re.compile(), jdu si nastudovat co že to vlastně fakticky dělá ...
    Kvík ..
    Martin Stiborský avatar 12.11.2006 13:25 Martin Stiborský | skóre: 26 | blog: Stibiho bláboly | Opava
    Rozbalit Rozbalit vše Re: Python : regulární výraz a pole
    Jo, filter je fajn, to se mi líbí, akorát co mi není jasné, je regexp.search, tedy ten .search, díky němu se na základě regexpu prohledávají retězce ? A filter se postará o to, aby se vyhovující prvky naskládaly do pole_out ?
    Kvík ..
    12.11.2006 13:55 rajcze | skóre: 6 | blog: rajcze | kus od Brna
    Rozbalit Rozbalit vše Re: Python : regulární výraz a pole
    takze: filter ma dva parametry - funkci a pole - postupne vsechny prvky pole preda jako parametr funkci a pokud tato vrati cokoli co se da interpretovat jako True tak se ten prvek "prida" do vystupniho pole(ve skutecnosti se az na konci vrati pole se vsemi prvky co vyhovuji.. to jen pro predstavu). regexp.search("retezec") provede standardni vyhledani regularniho vyrazu ktery si definoval pri regexp=re.compile("regeular expression"). Pokud "retezec" vyhovi regexpu, vrati se objekt <_sre.SRE_Match object at 0x00A17F38> jinak None.
    staci tak?
    Rules of Optimization: Rule 1: Don't do it. Rule 2 (for experts only): Don't do it yet.
    Martin Stiborský avatar 12.11.2006 13:57 Martin Stiborský | skóre: 26 | blog: Stibiho bláboly | Opava
    Rozbalit Rozbalit vše Re: Python : regulární výraz a pole
    Jasně, paráda, dík moc
    Kvík ..
    12.11.2006 14:00 rajcze | skóre: 6 | blog: rajcze | kus od Brna
    Rozbalit Rozbalit vše Re: Python : regulární výraz a pole
    vlastne by se to dalo prepsat jako
    import os,re
    
    regexp=re.compile("regularni vyraz"$)
    pole_out=[]
    for prvek in os.listdir("./"):
        if regexp.search(prvek) is not None:
            pole_out.append(prvek)
    
    kdy regexp.search(prvek) se da nahradit za re.compile("regularni vyraz").search(prvek) ale je to zbytecny, protoze pak porad dokola vytvaris "instanci regualrniho vyrazu".
    Rules of Optimization: Rule 1: Don't do it. Rule 2 (for experts only): Don't do it yet.
    12.11.2006 12:28 ondrab | skóre: 12 | Milevsko
    Rozbalit Rozbalit vše Re: Python : regulární výraz a pole
    Musis ukazat na prvek toho pole, treba ve smycce:
    for f in os.listdir():
        # sem dej ten RE
    
    Keep on keepin' on.
    12.11.2006 12:45 razor | skóre: 33
    Rozbalit Rozbalit vše Re: Python : regulární výraz a pole
    Mrkni ještě na tohle. Třeba se ti to bude hodit.
    12.11.2006 14:00 fakenickname | skóre: 42 | blog: fakeblog
    Rozbalit Rozbalit vše Re: Python : regulární výraz a pole
    Ja si budu hrat trochu na byrokrata - tato otazka jsem opravdu patri?
    Martin Stiborský avatar 12.11.2006 14:03 Martin Stiborský | skóre: 26 | blog: Stibiho bláboly | Opava
    Rozbalit Rozbalit vše Re: Python : regulární výraz a pole
    Vadí ti tady ? :-)
    Kvík ..

    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.