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 01:44 | Pozvánky

    Přemýšlíte, jak začít prázdniny? Už v úterý 1. července se bude konat Virtuální Bastlírna, tedy online setkání bastlířů, techniků, vědců i akademiků, kde se ve volné diskuzi probírají novinky ze světa techniky, ale i jiných zajímavých témat.

    Za poslední měsíc jsme byli svědky plamenů několika raket. Zatímco malá raketa od Hondy se úspěšně vznesla a opět přistála, raketa od SpaceX se rozhodla letět všemi směry najednou. Díkybohu méně … více »
    Uprdkávač | Komentářů: 0
    včera 23:44 | Komunita

    Linus Torvalds zmínil, že souborový systém Bcachefs zřejmě odstraní z mainline Linuxu v začleňovacím okně pro vydání 6.17. Kent Overstreet mu totiž posílá kód s novou funkcionalitou i pro začlenění do kandidátů na vydání, kdy očekává pouze opravy chyb. Ken Overstreet byl již dříve z vývoje vyloučen kvůli konfliktní komunikaci.

    Fluttershy, yay! | Komentářů: 0
    27.6. 11:55 | IT novinky

    Ministerstvo průmyslu a obchodu propaguje Microsoft. Ten ve spolupráci s Ministerstvem průmyslu a obchodu spouští AI National Skilling Plan v ČR. "Iniciativa Microsoftu přináší konkrétní a praktickou podporu právě tam, kde ji nejvíc potřebujeme – do škol, firem i veřejné správy.", říká ministr průmyslu a obchodu Lukáš Vlček.

    Ladislav Hagara | Komentářů: 25
    27.6. 10:55 | Zajímavý projekt

    Jste český ISP? Vyplněním krátkého dotazníku můžete pomoci nasměrovat vývoj nové generace routerů Turris Omnia [𝕏].

    Ladislav Hagara | Komentářů: 4
    27.6. 01:33 | IT novinky

    Celkové tržby společnosti Canonical za rok 2024 byly 292 milionů dolarů (pdf). Za rok 2023 to bylo 251 milionů dolarů.

    Ladislav Hagara | Komentářů: 1
    27.6. 01:22 | Nová verze

    Byla vydána verze 1.88.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
    27.6. 01:11 | Nová verze

    Distribuce Tails specializující se ochranu online soukromí uživatele byla vydána ve verzi 6.17. Mimo jiné aktualizuje Tor Browser (14.5.4) a opravuje několik chyb.

    Fluttershy, yay! | Komentářů: 0
    26.6. 21:11 | Nová verze Ladislav Hagara | Komentářů: 0
    26.6. 13:11 | IT novinky

    Město Lyon posiluje svou digitální suverenitu a postupně nahrazuje software od společnosti Microsoft bezplatnými alternativami, zejména OnlyOffice pro kancelářské aplikace a Linux a PostgreSQL pro systémy a databáze.

    Ladislav Hagara | Komentářů: 9
    26.6. 11:44 | Zajímavý projekt

    Evropská občanská iniciativa Stop Destroying Videogames se snaží o to, aby vydavatelé, kteří spotřebitelům v Evropské unii prodávají videohry nebo na ně udělují licence, měli povinnost tyto hry ponechat ve funkčním (hratelném) stavu i po ukončení podpory ze své strany. Podpořit podpisem tuto iniciativu můžete v Systému pro online sběr podpisů.

    trekker.dk | Komentářů: 5
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (28%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 330 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: python: Rozbity parser

    6.6.2018 13:50 luky
    python: Rozbity parser
    Přečteno: 2703×
    Muze nejaky pythonista osvetlit, proc nasledujici kod je odmitnut pro syntaktickou chybu:

    python -c'import time; while 1: time.sleep(0.05)'

    pritom nasledujici kod funguje:

    python -c'while 1: import time; time.sleep(0.05)'

    Ve skutecnocti mam v cyklu vice kodu, ale pro ilustraci problemu neni potreba. Prijde mi to jako bug v parseru.

    Řešení dotazu:


    Odpovědi

    6.6.2018 15:03 pythonist
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    precti si specifikaci
    
    compound_stmt ::=  if_stmt
                       | while_stmt
                       | for_stmt
                       | try_stmt
                       | with_stmt
                       | funcdef
                       | classdef
                       | decorated
    suite         ::=  stmt_list NEWLINE | NEWLINE INDENT statement+ DEDENT
    statement     ::=  stmt_list NEWLINE | compound_stmt
    stmt_list     ::=  simple_stmt (";" simple_stmt)* [";"]
    
    
    6.6.2018 15:54 luky
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    Aha, ta gramatika je nepouzitelna na onelinery, protoze smycka musi byt vzdy prvni na radku.

    Nakonec jsem nainstaloval microperl, ale 480kB na 16MB flash docela boli.

    7.6.2018 08:20 Ja
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    Co ti brání napsat:

    python -c'import time
    while 1: time.sleep(0.05)'
    

    ?
    7.6.2018 14:43 luky
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    Mozna Vas to prekvapi, ale ne vsichni to pak umi spravne prekopirovat do terminalu. Ze stejneho duvodu se vyhybam vytvareni souboru. Casto se i stava, ze nejaky program nahradi odradkovani za nejaky jiny bily znak a pak to nefunguje. Podobne trable mam i s - a –.
    8.6.2018 08:44 Ja
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    Tak pak tu máme superšpek :-)

    python -c "$(printf '%s\n%s' 'import time' 'while 1: time.sleep(0.05)')"
    Bystroushaak avatar 20.6.2018 13:02 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    Nakonec jsem nainstaloval microperl, ale 480kB na 16MB flash docela boli.
    Co že to vlastně děláš?
    22.6.2018 16:53 luky
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    Psal jsem kucharku pro servisaky jak monitorovat nejake countery. Potrebujou to bud vypisovat a nebo aby terminal pipal, kdyz je hodnota v danejch mezich.
    Bystroushaak avatar 22.6.2018 17:11 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    A proč to běží přímo na těch zařízeních a nečteš to z toho z venčí?
    25.6.2018 19:33 luky
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    Protoze seriovy terminal a nebo SSH klienta maji vsichni, co by se mohli dostat do pozice, ze to potrebuji pouzit. Pokud bychom meli nejakeho tezkeho klienta, musel by se instalovat predem.
    rADOn avatar 8.6.2018 11:06 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    python -c 'import time, itertools ; map(time.sleep, itertools.repeat(0.05))'
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    8.6.2018 11:25 asdf
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    echo -e 'import time\nwhile 1: time.sleep(0.1)'|python
    8.6.2018 16:52 Ja
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    Čistě technická: echo bych nedoporučoval - jednak některé implementace neznají parametr -e a prostě ho vypíšou, druhak je pak třeba hlídat a escapovat všechna zpětná lomítka, printf tyto nedostatky nemá.

    A ještě detail, přesměrováním do interpreta se zabije vstupní kanál, který by mohl být potřeba k načítání dat či uživatelských vstupů.
    9.6.2018 09:24 logik
    Rozbalit Rozbalit vše Re: python: Rozbity parser
    pokud je tam bash a je třeba stdin, tak je elegantní

    python <( printf( ..... ) )

    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.