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

    Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.5.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    dnes 12:11 | Nová verze

    Byla vydána (𝕏) nová verze 8.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze R14.1.7 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 4
    dnes 00:33 | Nová verze

    Bazzite (Wikipedie), tj. linuxová distribuce vycházející z Fedora Linuxu a optimalizována pro hraní počítačových her, byla vydána ve verzi 45. S Open Gaming Collective (OGC) jádrem a novým Easy Anti-Cheatem pro Linux (EAC Linux v2).

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | Bezpečnostní upozornění

    MikroTik zveřejnil vlastní bezpečnostní upozornění potvrzující, že zranitelnost linuxového jádra postihuje také RouterOS 7. Jde o use-after-free při zpracování IPv4 TCP spojení s IP options. Zranitelnost se týká provozu směřujícího na TCP službu samotného routeru, nikoli paketů, které router pouze přeposílá. Opraveno v long-term od 7.24.6, v stable od 7.25.1 a devel od 7.26beta5.

    vencour | Komentářů: 1
    včera 17:00 | Bezpečnostní upozornění

    Ve správci balíčků APT, používaném v Debianu a odvozených distribucích, byla nalezena a opravena kritická zranitelnost CVE-2026-109518. Vzdálený útočník může obejít ověření stažených balíčků pomocí přesměrování a dočasných chyb HTTP serveru.

    Ladislav Hagara | Komentářů: 2
    včera 13:11 | IT novinky

    Nejvyšší kontrolní úřad (NKÚ) vydal zprávu o finančním řízení prostředků EU v ČR (pdf). Dočíst se lze například, že přes 8 miliard korun na digitální vzdělávání nepřineslo naplnění žádného z prioritních cílů programu. Peněžní prostředky z fondů EU sice byly vynaloženy formálně v souladu s právními předpisy, avšak s minimálním nebo neprokazatelným dopadem na proklamované cíle ve vzdělávání. Na Metodickém portálu RVP.CZ bylo ke konci

    … více »
    Ladislav Hagara | Komentářů: 21
    včera 11:33 | Nová verze

    Emulátor terminálu kitty (Wikipedie, GitHub) byl vydán v nové verzi 0.50.

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

    Vývojáři C-Kermit oznámili několik dlouhodobě přítomných zranitelností. Patří mezi ně buffer overflow v Telnet/FTP klientovi a command injection v Kermit serveru. Dotčené verze: C-Kermit 11.0.514 a starší. Fix: 11.1.515 [oss-security].

    vencour | Komentářů: 0
    včera 02:44 | Nová verze

    Byla vydána nová verze 3.2.8 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2982 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: Hledani prvku v poli - python

    28.11.2009 00:43 array
    Hledani prvku v poli - python
    Přečteno: 1677×
    Ahoj, mam problem s hledanim prvku v poli (v pythonu). Kdyz vytvorim takoveto pole, hledani funguje:
    mmm = ( ['a', 'b', 'c'] )
    i = mmm.index('b')	
    print i
    vrati 1

    ale kdyz vytvorim takoveto pole:
    mmm = ( ['a', 'b', 'c'], ['d', 'e', 'f'] )
    i = mmm.index('b')	
    print i
    nejde to:
    Traceback (most recent call last):
      File "pole.py", line 25, in <module>
        i = mmm.index('b')	
    ValueError: tuple.index(x): x not in list
    
    Jak se da prohledavat takoveto pole?

    Odpovědi

    28.11.2009 08:54 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
    Rozbalit Rozbalit vše Re: Hledani prvku v poli - python
    Pro začátek proč první funguje:

    ( ['a', 'b', 'c'] ) == ['a', 'b', 'c']

    A co si představuješ, že by to mělo v druhém případě vrátit?
    28.11.2009 12:51 array
    Rozbalit Rozbalit vše Re: Hledani prvku v poli - python
    >>> mmm = ( ['a', 'b', 'c'], ['d', 'e', 'f'] )
    >>> print mmm[1]
    ['d', 'e', 'f']
    >>> print mmm[1][1]
    e
    Predstavoval bych si, ze to vrati to [1][1].
    2.12.2009 18:58 Lithius | skóre: 14
    Rozbalit Rozbalit vše Re: Hledani prvku v poli - python
    Tak jednoduse, pokud jde o Touple, prochazej jej v cyklu a v kazdem prvku (tedy seznamu) nech vyhledat to co potrebujes.
    2.12.2009 20:28 l4m4
    Rozbalit Rozbalit vše Re: Hledani prvku v poli - python
    Nemusíš nic procházet v cyklu, od toho jsou v Pythonu comprehensions, viz moje řešení dole. Pokud chceš jen první výskyt, použiješ kulaté iterátorové závorky namísto hranatých seznamových a vezmeš první prvek výsledku (a ošetříš IndexError, když se to nenajde), takže se to po nalezení prvního výskytu zastaví.
    28.11.2009 11:03 12345 | skóre: 41 | blog:
    Rozbalit Rozbalit vše Re: Hledani prvku v poli - python
    Toto je list obsahující prvky a, b a c:
    mmm = ( ['a', 'b', 'c'] )
    
    Jde o obyčejné pole (list).

    Toto je 1-tuple obsahující list, který zase obsahuje prvky a, b a c:
    mmm = ( ['a', 'b', 'c'], )
    
    Jde o „pole polí“ (přesněji tuple listů).

    A konečně toto je 2-tuple obsahující dva listy s prvky a, b, c, resp. d, e, f:
    mmm = ( ['a', 'b', 'c'], ['d', 'e', 'f'] )
    
    Opět tuple listů.

    Jestli chceš funkci na rekurzivní prohledávání polí, budeš si ji muset napsat. A, jak psal Michal Čihař, je otázkou, co by tak asi měla vracet.
    28.11.2009 15:56 l4m4
    Rozbalit Rozbalit vše Re: Hledani prvku v poli - python
    Jak je to přesně s datovými typy už vysvětlil Víťa Šmíd, takže jen takový příklad:
    >>> a, b = [], []
    >>> c = [a,b]
    >>> a.extend([b,c])
    >>> b.extend([a,c])
    
    Jak by sis asi představoval, že tam bude rekursivní index() fungovat? Co má přesně vrátit c.index(c)? Nekonečné pole? Má to hledat nejdřív do hloubky nebo do šířky? Je zjevné, že obecné rekursivní prohledávání od index() čekat nelze, takže chceš-li ho, musíš za daných předpokladů vlastnostech těch dat napsat.

    Např. toto je seznam všech dvojic indexů, kde se 'a' vyskytuje v tvém mmm:
    [(x[0],x[1].index('a')) for x in enumerate(mmm) if 'a' in x[1]]
    

    Založit nové vlákno • Nahoru

    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.