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

    Curl, řádkový nástroj a knihovna pro přenos dat po různých protokolech, slaví 25 let. Vydána byla nová verze 8.0.0. Mimo jiné řeší 6 zranitelností.

    Ladislav Hagara | Komentářů: 0
    dnes 10:00 | Komunita

    V sobotu 25. března proběhne Arduino Day 2023. Od 14:00 lze sledovat oficiální stream. Zúčastnit se lze i lokálních akcí. V Česku jsou aktuálně registrovány dvě: v Praze na Matfyzu a v Poličce v městské knihovně.

    Ladislav Hagara | Komentářů: 0
    dnes 09:00 | Zajímavý projekt

    Fabrice Bellard, tvůrce FFmpeg nebo QEMU, představil TextSynth Server. Jedná se o webový server nabízející REST API k velkým AI jazykovým modelům. CPU verze je k dispozici zdarma jako binárka pod licencí MIT. GPU verze je komerční. Vyzkoušet lze na stránkách TextSynth.

    Ladislav Hagara | Komentářů: 0
    dnes 08:00 | Komunita

    Na konferenci LibrePlanet 2023 byly vyhlášeny ceny Free Software Foundation. Oceněni byli Eli Zaretskii za dlouhodobé příspěvky (správce Emacsu), Tad „SkewedZeppelin“ za nové příspěvky (správce DivestOS, distribuce Androidu) a projekt GNU Jami za společenský přínos.

    Fluttershy, yay! | Komentářů: 0
    dnes 07:00 | Nová verze

    Projekt Libreboot (Wikipedie) vydal novou verzi 20230319 svého svobodného firmwaru nahrazujícího proprietární BIOSy. Přibyla například podpora Lenovo ThinkPadů W530 a T530. Libreboot je distribucí Corebootu bez proprietárních blobů.

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

    Na YouTube jsou k dispozici videozáznamy z 20. konference SCALE (Southern California Linux Expo). Závěrečnou přednášku měl dnes již osmdesátiletý Ken Thompson. Na otázku, jaký operační systém používá, odpověděl: "Většinu svého života jsem používal Apple, protože jsem se do této společnosti tak trochu narodil. Poslední dobou, myslím posledních pět let, jsem ale kvůli Applu více a více depresivní. To, co dělá s něčím, co by vám mělo umožnit

    … více »
    Ladislav Hagara | Komentářů: 3
    včera 16:44 | Nová verze

    Byla vydána verze 10.00 linuxové distribuce SystemRescue, původně SystemRescueCd, určené pro záchranu systémů a dat. Přehled novinek v changelogu. Linux byl povýšen na verzi 6.1.20.

    Ladislav Hagara | Komentářů: 0
    18.3. 11:33 | Nová verze

    Byla vydána verze 16.0.0 překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools, Libc++ a Polly.

    Ladislav Hagara | Komentářů: 0
    17.3. 09:00 | Komunita

    O víkendu probíhá v Bostonu, a také virtuálně, konference LibrePlanet 2023 organizovaná nadací Free Software Foundation (FSF).

    Ladislav Hagara | Komentářů: 0
    17.3. 08:00 | IT novinky

    Na Crowd Supply běží kampaň na podporu open source notebooku MNT Pocket Reform od společnosti MNT Research. Notebook má mechanickou klávesnici s RGB podsvícením a 7 palcový displej s rozlišením 1920×1200 pixelů. Cena začíná na 899 dolarech. Před třemi lety proběhla úspěšná kampaň na podporu notebooku MNT Reform.

    Ladislav Hagara | Komentářů: 12
    Používáte WSL (Windows Subsystem for Linux)?
     (74%)
     (12%)
     (4%)
     (10%)
    Celkem 265 hlasů
     Komentářů: 1, poslední 6.3. 07:51
    Rozcestník


    Dotaz: python-parsovani stringu

    1.3.2009 00:27 parser
    python-parsovani stringu
    Přečteno: 263×
    Zdravim, ucim se parsovat v pythonu, ale hned na zacatku jsem narazil na neprekonatelny problem. Program vypise:
    nejakyprikaz: abc
    yacc: Syntax error at line 1, token=OTHERCOMMAND
    Ale ocekaval bych:
    nejakyprikaz: abc
    jinyprikaz: xyz
    
    Zde je program:
    import ply.yacc as yacc
    import ply.lex as lex
    
    data = "define { nejakyprikaz abc; jinyprikaz xyz; }"
    
    tokens = [
            'LPAREN',
            'RPAREN',
            'COLON',
            'ARGUMENT',
    ]
    
    reserved = {
            'define' : 'DEFINE',
            'nejakyprikaz' : 'SOMECOMMAND',
            'jinyprikaz': 'OTHERCOMMAND',
    }
    
    tokens += reserved.values()
    
    t_LPAREN = r'{'
    t_RPAREN = r'}'
    t_COLON = r';'
    t_ignore = ' \t\n'
    
    def t_ARGUMENT(t):
            r'[a-z0-9]+'
            t.type = reserved.get(t.value, 'ARGUMENT')
            return t
    
    def p_start(p):
            'start : DEFINE LPAREN commands RPAREN'
            pass
    
    def p_commands(p):
            """commands : command COLON
                        | commands"""
            pass
    
    def p_command(p):
            """command : some_command
                       | other_command"""
            pass
    
    def p_some_command(p):
            'some_command : SOMECOMMAND ARGUMENT'
            print 'nejakyprikaz:', p[2]
    
    def p_other_command(p):
            'other_command : OTHERCOMMAND ARGUMENT'
            print 'jinyprikaz:', p[2]
    
    debug = False
    lex.lex(debug=debug)
    yacc.yacc(debug=debug)
    yacc.parse(data)
    Netusite, co tam mam tak spatne, ze se to nechova podle ocekavani?

    Na otázku zatím nikdo bohužel neodpověděl.

    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.