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í
×
    včera 23:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) první RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    včera 23:22 | Komunita

    Eugen Rochko, zakladatel Mastodonu, tj. sociální sítě, která není na prodej, oznámil, že po téměř 10 letech odstupuje z pozice CEO a převádí vlastnictví ochranné známky a dalších aktiv na neziskovou organizaci Mastodon.

    Ladislav Hagara | Komentářů: 0
    včera 19:44 | Nová verze

    Byla vydána nová major verze 5.0 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v obsáhlých poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 14:00 | Upozornění

    Cloudflare, tj. společnost poskytující "cloudové služby, které zajišťují bezpečnost, výkon a spolehlivost internetových aplikací", má výpadek.

    Ladislav Hagara | Komentářů: 7
    včera 04:22 | Pozvánky

    Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou

    … více »
    SoutezKasiopea | Komentářů: 1
    včera 04:11 | Nová verze

    Byla vydána nová verze 2.52.0 distribuovaného systému správy verzí Git. Přispělo 94 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    17.11. 18:00 | Nová verze

    VKD3D-Proton byl vydán ve verzi 3.0. Jedná se fork knihovny vkd3d z projektu Wine pro Proton. Knihovna slouží pro překlad volání Direct3D 12 na Vulkan. V přehledu novinek je vypíchnuta podpora AMD FSR 4 (AMD FidelityFX Super Resolution 4).

    Ladislav Hagara | Komentářů: 0
    17.11. 03:11 | Nová verze

    Poštovní klient Thunderbird byl vydán v nové verzi 145.0. Podporuje DNS přes HTTPS nebo Microsoft Exchange skrze Exchange Web Services. Ukončena byla podpora 32bitového Thunderbirdu pro Linux.

    Ladislav Hagara | Komentářů: 2
    17.11. 02:33 | IT novinky

    U příležitosti státního svátku 17. listopadu probíhá na Steamu i GOG.com již šestý ročník Czech & Slovak Games Week aneb týdenní oslava a také slevová akce českých a slovenských počítačových her.

    Ladislav Hagara | Komentářů: 0
    16.11. 19:33 | Nová verze

    Byla vydána nová verze 9.19 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze například nový balíček BirdNET-Go, tj. AI řešení pro nepřetržité monitorování a identifikaci ptáků.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (23%)
     (15%)
     (23%)
     (16%)
     (16%)
    Celkem 367 hlasů
     Komentářů: 16, poslední 12.11. 18:21
    Rozcestník

    Dotaz: Hledani prvku v poli - python

    28.11.2009 00:43 array
    Hledani prvku v poli - python
    Přečteno: 1351×
    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á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.