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 14:33 | Zajímavý software

    Grafický správce balíčků Myrlyn pro SUSE a openSUSE, původně YQPkg, dospěl do stabilní verze 1.0.0. Postaven je nad libzypp a Qt 6. Projekt začal na SUSE Hack Weeku 24.

    Ladislav Hagara | Komentářů: 3
    dnes 13:44 | Zajímavý projekt

    Vývojáři se podařilo vytvořit patch pro Wine, díky kterému je možné na linuxovém stroji nainstalovat a spustit Adobe Photoshop (testováno s verzemi Photoshopu PS2021 a PS2025). Dalším patchem se podařilo umožnit dokonce instalaci téměř celého Adobe Creative Cloud Collection 2023, vyjma aplikací Adobe XD a Adobe Fresco. Patch řeší kompatibilitu s windowsovými subsystémy MSHTML - jádrem prohlížeče Internet exporer, a MSXML3 - parserem

    … více »
    NUKE GAZA! 🎆 | Komentářů: 0
    dnes 13:33 | IT novinky

    Hackeři zaútočili na portál veřejných zakázek a vyřadili ho z provozu. Systém, ve kterém musí být ze zákona sdíleny informace o veřejných zakázkách, se ministerstvo pro místní rozvoj (MMR) nyní pokouší co nejdříve zprovoznit. Úřad o tom informoval na svém webu a na sociálních sítích. Portál slouží pro sdílení informací mezi zadavateli a dodavateli veřejných zakázek.

    Ladislav Hagara | Komentářů: 2
    dnes 12:22 | Nová verze

    Javascriptová knihovna jQuery (Wikipedie) oslavila 20. narozeniny, John Resig ji představil v lednu 2006 na newyorském BarCampu. Při této příležitosti byla vydána nová major verze 4.0.0.

    Ladislav Hagara | Komentářů: 2
    dnes 01:33 | Zajímavý projekt

    Singularity je rootkit ve formě jaderného modulu (Linux Kernel Module), s otevřeným zdrojovým kódem dostupným pod licencí MIT. Tento rootkit je určený pro moderní linuxová jádra 6.x a poskytuje své 'komplexní skryté funkce' prostřednictvím hookingu systémových volání pomocí ftrace. Pro nadšence je k dispozici podrobnější popis rootkitu na blogu autora, případně v článku na LWN.net. Projekt je zamýšlen jako pomůcka pro bezpečnostní experty a výzkumníky, takže instalujte pouze na vlastní nebezpečí a raději pouze do vlastních strojů 😉.

    NUKE GAZA! 🎆 | Komentářů: 0
    včera 21:22 | Zajímavý projekt

    Iconify je seznam a galerie kolekcí vektorových open-source ikon, ke stažení je přes 275000 ikon z více jak dvou set sad. Tento rovněž open-source projekt dává vývojářům k dispozici i API pro snadnou integraci svobodných ikon do jejich projektů.

    NUKE GAZA! 🎆 | Komentářů: 3
    včera 03:33 | IT novinky

    Dle plánu certifikační autorita Let's Encrypt nově vydává také certifikáty s šestidenní platností (160 hodin) s možností vystavit je na IP adresu.

    Ladislav Hagara | Komentářů: 8
    17.1. 14:44 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 14.0 (Mastodon). Forgejo je fork Gitei.

    Ladislav Hagara | Komentářů: 8
    17.1. 13:11 | Zajímavý projekt

    Just the Browser je projekt, 'který vám pomůže v internetovém prohlížeči deaktivovat funkce umělé inteligence, telemetrii, sponzorovaný obsah, integraci produktů a další nepříjemnosti' (repozitář na GitHubu). Využívá k tomu skrytá nastavení ve webových prohlížečích, určená původně pro firmy a organizace ('enterprise policies'). Pod linuxem je skriptem pro automatickou úpravu nastavení prozatím podporován pouze prohlížeč Firefox.

    NUKE GAZA! 🎆 | Komentářů: 3
    16.1. 16:44 | Nová verze

    Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.18. Díky 174 přispěvatelům.

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (17%)
     (5%)
     (0%)
     (9%)
     (20%)
     (3%)
     (5%)
     (2%)
     (11%)
     (39%)
    Celkem 521 hlasů
     Komentářů: 14, poslední včera 10:22
    Rozcestník

    Dotaz: Python - konceni programu uzivatelem

    tomes.io avatar 3.10.2012 01:40 tomes.io | skóre: 12 | blog: tomesh
    Python - konceni programu uzivatelem
    Přečteno: 293×
    Ahoj, zacal jsem se ucit Python a potykam se s problemem, jak ukoncit bezici skript. Chci vyuzit slovnik, protoze chci, aby uzivatel volil ruzne funkcionality dle klicovych slov definovanych ve slovniku. Kdyz si nadefinuji klicove slovo SHUTDOWN a k nemu funkci, ktera ukoncuje program, tak, paklize fce stoji nekde osamote mimo cyklus, skript ukonci. Je-li ale v cyklu, tak nijak nereaguje.

    Uvedu ilustracni priklad:
    #!/usr/bin/python
    
    
    def read():
    
        str = raw_input('Napis neco: ')
        return str
        
    def write(msg):
        
        print msg
        
    def cmd_shutdown():
    
        raise SystemExit
        
    def pokusna():
        
        print "POkus"
        cmd_shutdown()
        
    COMMANDS = {}
    COMMANDS['SHUTDOWN'] = cmd_shutdown
    COMMANDS['POKUS'] = pokusna
        
    if __name__ == "__main__":
        while True:
            try:
                msg = read()
                
                if msg in COMMANDS:    
                    COMMANDS[msg]
             
                write(msg)
                      
            except (KeyboardInterrupt, EOFError):
                break
    Pokud uzivatel zada na vstupu klicove slovo, tak se provede prislusna fce. V propade slova POKUS vse funguje a fce pokusna() se provede, ale pokud zadam SHUTDOWN, tak se to jen prepise na obrazovku a fce cmd_shutdown() se vubec neprovede.

    Jsem v Pythonu novy a spoustu veci nevim, takze je mozne, ze se jedna o prkotinu, kazdopadne budu rad za jakykoliv hint.

    Řešení dotazu:


    Odpovědi

    tomes.io avatar 3.10.2012 01:50 tomes.io | skóre: 12 | blog: tomesh
    Rozbalit Rozbalit vše Re: Python - konceni programu uzivatelem
    Tak ja se omlouvam, ona nefunguje ani ta fce pokusna(). Cili bych rad preformuloval dotaz: jak zprovoznit a IF cyklem testovat klicova slova sloviku a volani z fci, ktere jsou lovnikem definovany?

    Nechapu to, pri debuggingu vidim, ze do promenne msg se nacte retezec ve tvaru
    'retezec'
    , coz by melo stacit ke srovnani pomoci "in" a naslednemu pouziti prikazu COMMANDS['retezec']...
    3.10.2012 06:39 Marek
    Rozbalit Rozbalit vše Re: Python - konceni programu uzivatelem
    Čau,

    PV248, že? ;] Pan Sivak to ma rovnou ve slajdech. http://msivak.fedorapeople.org/python/01.html#(17)

    řádky:

    get a first word (cmd) from msg and test if it is a valid command (if cmd in COMMANDS:)

    if yes: execute the corresponding function (ret = COMMANDS[cmd](rest_of_the_input)) and process the result ret (if is_done(ret):, if is_next(ret):)

    Nesmis zapomenout tu hodnotu ze slovniku zavolat jako funkci (tj. dat za ni () ), jinak ti to jenom vrati objekt <function fce at 0xXXXXXXXXXXXXX> (XXX hex adresa)

    tomes.io avatar 3.10.2012 10:12 tomes.io | skóre: 12 | blog: tomesh
    Rozbalit Rozbalit vše Re: Python - konceni programu uzivatelem
    Ano, PV248 ;)

    Nesmis zapomenout tu hodnotu ze slovniku zavolat jako funkci (tj. dat za ni () )

    Tohle jsem prehlid, ty zavorky. Jasne vono je to logicky :D Diky moc.
    rADOn avatar 3.10.2012 15:55 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Python - konceni programu uzivatelem
    BTW ve standartní knihovně je na tohle už hotový modul cmd.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco

    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.