Cyklus for

Cykly a seznamy patří k sobě. Cyklem while byste mohli projít indexy seznamu od 0 až po poslední a přečíst každý prvek:

hry = ["Fotbal", "Tenis", "Golf"]
index = 0
while index < len(hry):
    print(hry[index])
    index += 1

Vypíše:

Fotbal
Tenis
Golf

Funguje to, ale o index se musíte starat sami. Procházení všech prvků seznamu je tak časté, že na ně má Python jednodušší cyklus, for (pro):

hry = ["Fotbal", "Tenis", "Golf"]
for hra in hry:
    print(hra)
Fotbal
Tenis
Golf

Zápis for hra in hry: čtěte jako „pro každou hru v seznamu hry“; anglické in znamená „v“. V každém průchodu je v proměnné hra další prvek seznamu: nejdřív "Fotbal", pak "Tenis" a nakonec "Golf". Po posledním prvku cyklus skončí. Index ani len() vůbec nepotřebujete, takže se v nich ani nemůžete splést.

Proměnnou hra vytvoří řádek s for sám a její název je na vás: for x in hry: funguje stejně. Dobrým zvykem je pojmenovat ji podle jednoho prvku seznamu: hra ze seznamu hry, jmeno ze seznamu jmena, cena ze seznamu ceny. Kód se pak čte skoro jako věta.

Častou chybou je vypsat v cyklu místo prvku celý seznam:

hry = ["Fotbal", "Tenis", "Golf"]
for hra in hry:
    print(hry)
['Fotbal', 'Tenis', 'Golf']
['Fotbal', 'Tenis', 'Golf']
['Fotbal', 'Tenis', 'Golf']

Cyklus proběhne třikrát, ale pokaždé vypíše celý seznam. Uvnitř cyklu pracujte s prvkem: hra, ne hry.

Stejně jako if a while končí i řádek s for dvojtečkou. Bez ní Python skončí chybou SyntaxError: expected ':'.

Pokyny

Napište cyklus for, který vypíše každý prvek seznamu spoluhraci na samostatný řádek.

Pod něj napište druhý cyklus, který vypíše spoluhráče i s pořadovým číslem: 1. Ondřej, 2. Tomáš, 3. Honza a 4. Pavel. Před cyklem vytvořte proměnnou cislo s hodnotou 1. V cyklu vypište číslo a jméno pomocí f-řetězce, například f"{cislo}. {spoluhrac}", a potom cislo zvyšte o 1.

Začněte programovat zdarma

Registrací souhlasíte s provozními podmínkami a zásadami ochrany osobních údajů.

Nebo se registrujte pomocí:

Zpět

2/11

Další