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 12:11 | IT novinky

    Včera večer měl na YouTube premiéru dokumentární film Python: The Documentary | An origin story.

    Ladislav Hagara | Komentářů: 0
    včera 23:33 | Nová verze

    Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Nová verze Ladislav Hagara | Komentářů: 2
    včera 14:11 | IT novinky

    Řada vestavěných počítačových desek a vývojových platforem NVIDIA Jetson se rozrostla o NVIDIA Jetson Thor. Ve srovnání se svým předchůdcem NVIDIA Jetson Orin nabízí 7,5krát vyšší výpočetní výkon umělé inteligence a 3,5krát vyšší energetickou účinnost. Softwarový stack NVIDIA JetPack 7 je založen na Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 4
    včera 00:44 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) spolu s NSA a dalšími americkými úřady upozorňuje (en) na čínského aktéra Salt Typhoon, který kompromituje sítě po celém světě.

    Ladislav Hagara | Komentářů: 25
    27.8. 16:33 | IT novinky

    Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.

    Ladislav Hagara | Komentářů: 1
    27.8. 14:22 | IT novinky

    Google oznamuje, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.

    Fluttershy, yay! | Komentářů: 9
    27.8. 13:11 | Nová verze

    Byla vydána nová verze 21.1.0, tj. první stabilní verze z nové řady 21.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.

    Ladislav Hagara | Komentářů: 0
    27.8. 05:11 | Komunita

    Alyssa Anne Rosenzweig v příspěvku na svém blogu oznámila, že opustila Asahi Linux a nastoupila do Intelu. Místo Apple M1 a M2 se bude věnovat architektuře Intel Xe-HPG.

    Ladislav Hagara | Komentářů: 22
    26.8. 12:55 | IT novinky

    EU chce (pořád) skenovat soukromé zprávy a fotografie. Návrh "Chat Control" by nařídil skenování všech soukromých digitálních komunikací, včetně šifrovaných zpráv a fotografií.

    Ladislav Hagara | Komentářů: 90
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (79%)
     (9%)
     (3%)
     (4%)
     (5%)
     (1%)
    Celkem 104 hlasů
     Komentářů: 9, poslední včera 11:53
    Rozcestník

    Vyhledávání dopravních spojení v CLI potřetí

    24.7.2008 12:57 | Přečteno: 992× | poslední úprava: 24.7.2008 14:23

    Při zveřejnění svého skriptu jsem tak trochu doufal, že se najde někdo, kdo by mi s jeho úpravou pomohl, respektive jej alespoň okomentoval (které části přepsat a jak, co je hrůza, co ujde...) a já bych měl tak možnost se naučit psát "čistší" programy. To se bohužel zatím nestalo, nicméně já na svůj příšerný skript nezanevřel a proběhla další várka úprav. Takže co je nového?

    Nejvetší změnou je přechod od dlouhého_skriptu_s_minimem_procedur k programu sestávajícího se ze třídy a několika kratších metod. To podstatně usnadní jeho použití i v jiných programech. Další změnou je rozdělení komunikace se serverem IDOSu do více kroků a změna zpracování výstupů. Výsledky (nalezená spojení či možnosti na výběr při nepřesně zadaných koncových bodech) jsou dostupné i prostřednictvím seznamů. Dále jsem se zbavil dočasných souborů a (povetšinou) přešel na unicode retězce. A v neposlední řadě jsem opravil chybu, která nastávala při nepřesně zadaném počátečním i koncovém bodě hledaného spojení. Uživatelům, jsou-li jací, proto doporučuji přechod na novějši verzi.

    Budu rád, když se ke skriptu vyjádříte a navrhnete další úpravy a vylepšení. Dostupný je stále na stejné adrese.

    UPDATE: Jak už to tak chodí, chvíli po zveřejnění zápisku jsem nalezl chybu. Při zadání neexistujícího cíle se skript zacyklil. Již je to (doufám) opraveno, stahujte tedy verzi 0.35.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    24.7.2008 13:19 luke7 | skóre: 3
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Uživatele máte, je to velmi zajímavý projekt a fandím mu. Jednou bych to rád použil jako jabberbota. S vývojem bych pomohl, ale vypadá to, že není třeba :-), navíc python zrovna nepoužívám...
    24.7.2008 13:51 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Diky za podporu. Pokud jde o jabberbota, tak jeden takovy jiz existuje, byl zminen v diskuzi u jednoho z predchozich blogu. A co se pomoci s vyvojem tyce, tak bych ji uvital, ikdyz, pravda, od nekoho v pythonu zkusenem. V blizsi dobe neplanuju pridavat zadne nove funkce, jen procistit kod. Stacilo by mi okomentovat "nepekne pasaze" (a ze jich je) a poradit, jak je upravit.
    24.7.2008 16:23 rajcze | skóre: 6 | blog: rajcze | kus od Brna
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    No, ja ti s pythonem klidne poradim :) nejsem sice nejaky velky guru, ale nejake zkusenosti uz sem nabral :)

    Kdyztak se ozvi na jabberu rajcze@njs.netlab.cz

    Joza
    Rules of Optimization: Rule 1: Don't do it. Rule 2 (for experts only): Don't do it yet.
    24.7.2008 17:36 luke7 | skóre: 3
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    ďěkuji za odkaz, to vypadá pěkně, ale stejně si možná udělám vlastní, hodila by se funkce nějaké proxy a prohlížení webu v osekané textové verzi pomocí bombusu v mobilu...
    24.7.2008 13:31 manasekp | skóre: 29 | blog: manasekp | Brno
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    mam trochu OT dotaz, pyhon nepouzivam a proto me prekvapily ty podminky ve skriptu, treba

    if kod == KOD_NEJEDNOZNACNE_KONCOVE_BODY: ...
    else: ...

    da se v pythonu pouzit i "normalni" zapis if(podm){} ?
    je nejaky duvod pro pouziti te syntaxe co tam mas ty?
    BIOKOMP | Cas od casu se pokousim nekoho srazit k zemi abych se tam nevalel sam.
    David Watzke avatar 24.7.2008 13:37 David Watzke | skóre: 74 | blog: Blog... | Praha
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Ne, protože Python není "normální" jazyk ;-) :-D Bloky se odlišují pomocí odsazení... je to šílený.
    “Being honest may not get you a lot of friends but it’ll always get you the right ones” ―John Lennon
    Václav 24.7.2008 13:54 Václav "Darm" Novák | skóre: 26 | blog: Darmovy_kecy | Bechyně / Praha
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Na druhou stranu to učí nováčky slušně formátovat kód.
    Cross my heart and hope to fly, stick a cupcake in my eye!
    24.7.2008 16:42 CEST
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Uraaa, a mame tady flame:-)

    No, jak se to vezme. Me jako navacka v pythonu a pokrocilyho v bashi, perlu a amatera jinych docela hodne zmatlo, kdyz jsem pripsal jeden radek v python kodu a pri spusteni me to vyfuckovalo, ze mam blby zarovnani. Podival jsem se znovu, zarovnani bylo ok. Pak mi teprve doslo, ze python sice rozpoznava bloky podle odsazeni, ale ne podle vizulaniho odsazeni, ale podle poctu znaku. Takze milej uzivateli, neni whitespace jako whitespace. 8 mezer PROSTE NENI stejne jako 4 taby nastaveni na sirku 2 znaky.

    Jinak me to taky docela stve z toho duvodu, ze nemuzu napsat python kod na jeden radek, napr. v cmdline.

    No, python je mozna pro zacatecniky, ale ne pro pokrocily. Proto se u me moc nechyt. Ale ne, trosku mi tam vadi i funkce, schovavany za pseudo metody. Na tom se pak zacatecnici uci pekne blbe OOP.
    24.7.2008 16:49 JS
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    A co je podle vas vizualni odsazeni? :-) Pocitac to vidi jak je to v tom souboru. To ze ruzne programy interpretuji delku tabu ruzne, je problem s taby, ne Pythonem. Doporucoval bych v Python zdrojacich taby vubec nepouzivat (mit v editoru nastavene nahrad taby mezerami).
    Václav 25.7.2008 11:47 Václav "Darm" Novák | skóre: 26 | blog: Darmovy_kecy | Bechyně / Praha
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Rozumím tomu dobře že používáš ve svých projektech taby i mezery, podle toho jak se to hodí? Nevede to pak k rozházení vizuální stránky kódu když to otevřeš v editoru s jinak nastavenou délkou tabu?
    Cross my heart and hope to fly, stick a cupcake in my eye!
    25.7.2008 13:48 zde | skóre: 9 | blog: Linuch | Brno
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    > 8 mezer PROSTE NENI stejne jako 4 taby nastaveni na sirku 2 znaky.

    Kterej kokot si nastavuje TAB na dva znaky?
    Táto, ty de byl? V práci, já debil.
    27.8.2008 15:16 Smajchl | skóre: 39 | blog: Drzy_Nazory | Praha
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    co je na tom spatne?
    My máme všechno co chcem, my máme dobrou náladu!
    24.7.2008 14:19 manasekp | skóre: 29 | blog: manasekp | Brno
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    zajimave, jak to teda pozna kde je konec podminky? kdyz budu met treba 10 vnorenych podminek a z toho nektere budou met i else cast tak uz prece neni mozne se v tom rozumne orientovat, kdezto pekne naformatovany kod s pouzitim zavorek je prehledny vzdycky.
    BIOKOMP | Cas od casu se pokousim nekoho srazit k zemi abych se tam nevalel sam.
    24.7.2008 14:23 Raduz | skóre: 5
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    No...v pythonu se v tom vyznáš taky, protože máš "pěkně naformátovaný kód" tak nějak z principu věci.
    24.7.2008 14:34 JS
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    V Pythonu se konec podminky pozna dvojteckou. Jak proste!

    Navic v dobe, kdy Guido jeste delal jazyk ABC, tak delali nejake usability testy, a zjistili, ze ta dvojtecka tomu pridava na citelnosti.
    24.7.2008 14:16 Raduz | skóre: 5
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Co to je "normální" zápis? :-) Python to prostě takhle má - podmínka končí dvojtečkou, blok kódu pro danou podmínku je odsazený whitespacem (případně je napsaný hned za dvojtečkou, pokud je toho jen na jeden rádek).
    24.7.2008 14:47 JS
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Probiram se trochu tim zdrojakem, a ma k tomu par doporuceni:

    1. Misto dict_opts.has_key("-d") je doporuceno pouzivat zapis "-d" in dict_opts. Navic cela ta podminka v nastavovani parametru by sla prepsat pomoci int(dict_opts.get("-d",5)).

    2. V te funkci parsuj_nalezene_spojeni by asi bylo lepe pouzit generator na radky, a misto toho oskliveho idiomu if faze_hledani == ?? pokazde iterovat skrze nej dokud by se nenarazilo na prislusny zaznam. Kratsi, citelnejsi a rychlejsi. Totez pro ostatni podobne funkce. Prave generatory maji vyhodu, ze se pomoci nich citelne implementuji stavove automaty, coz je tento pripad.
    24.7.2008 15:46 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Diky. O generatorech jsem precetl jen neco malo. Zkusim si k nim jeste neco najit.. Ale muzes mi zlehka nastinit, jak by ten kod vypadal? Neni mi uplne jasne, jak by se implementovaly ty jednotlive stavy (faze hledani). Respektive, tenkrat jsem to tak napsal prave proto, abych se v tom vyznal :-) a nedari se mi vymyslet srozumitelnejsi reseni s generatory. Jeste jednou diky.
    24.7.2008 17:16 JS
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Jsem ted na mitinku, takze to mozna nebude davat uplne smysl, ale zhruba takto:
    
    def parsuj_spojeni():
    
      def generator_radku(file):
        for line in file:
          .. nejake zpracovani vstupni radky line
          if pocet_spoju > max_pocet_spoju: break
          yield line
        return
    
      pocet_spoju=0
      gr=generator_radku(file)
      
      for line in gr:
        while not re.search("cosi",line): gr.next()
        .. zpracovani prvniho stavu
        while not re.search("cosi dalsiho",line): gr.next()
        .. zpracovani druheho stavu
        ...
        pocet_spoju+=1
    
    
    Zkratka, zakladni myslenka je, mit vstupy (v tomto pripade radky) ktera chcete prijimat tim stavovym automatem schovane v tom generatoru, a stavy toho automatu implementovat jako normalni body v kodu, ktere si proste vzdy vyzadaji prislusny ocekavany vstup (bud pomoci gr.next() nebo pomoci for cyklu pres gr).

    Tak bych to asi delal ja, je to citelnejsi nez studovat prechod mezi stavy a co ktery stav znamena.
    24.7.2008 18:00 kkaarreell | skóre: 6 | blog: perkele
    Rozbalit Rozbalit vše Re: Vyhledávání dopravních spojení v CLI potřetí
    Diky, to vypada dobre.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.