[python] Prvni jazyk: Python - index z for

Zdeněk Böhm zdenek.bohm na seznam.cz
Pátek Září 24 19:07:28 CEST 2004


----- Původní zpráva -----
Od: Radek Svarz <py.cz na svarz.cz>
Komu: Konference uživatelů Pythonu a spol. <python na py.cz>
Odesláno: 22. září 2004 13:26
Předmět: Re: [python] Prvni jazyk: Python


> Zdar,
>
> s Pythonem se asi rok jen tak postuchuju, nic vazneho, ale rozhodne me
> zarazilo toto:
>
> for i in range(len(List)):
>         print List[i]
>
> V jinych clancich totiz tohle je jako ukazka, jak by se to delat
> nemelo.
>

V helpu Python Documentation je v casti "4.3 The range() Function" uveden
tento priklad:

To iterate over the indices of a sequence, combine range() and len() as
follows:
a = ['Mary', 'had', 'a', 'little', 'lamb']
for i in range(len(a)):
         print i, a[i]

Takze nic zarazejiciho by to byt nemelo. Pokud je ale ten index potreba jen
vyjimecne, tak by to mohlo vypadat takto:

for item in a:
     if item in ['a','lamb']:
          i = a.index(item)
          print i, item

Nebo mate lepsi reseni jak v cyklu, kde iteraci je objekt ze seznamu, ziskat
jeho index v listu?
Zdenek


>
> Proto navrhuji klasicky priklad pro range z instant-python:
>
>     for value in range(100):
>         print value
>
> Pokud slo o aplikovani nejake funkce na prvky, tak je asi vhodnejsi
> map (teda pokud nejde o print :) .
>
> Nebo je to mysleny uplne jinak?
>
> Rozhodne tleskam za preklad.
>
>  Radek




Další informace o konferenci Python