Python pro smyčku: Stručný průvodce zvládnutím iterace

Jedním z nejzajímavějších konceptů v programovacích jazycích jsou smyčky. Představte si, že stojíte před úkolem. Je to jednoduché, ale opakuje se, jako počítání od 1 do 100. Nyní to můžete udělat ručně, jedno číslo po druhém. Ale to by bylo časově náročné a ne příliš efektivní. Zde přicházejí na řadu smyčky v programování.

Smyčka je řídicí struktura, která umožňuje opakovat sadu instrukcí, dokud není splněna určitá podmínka. Podmínkou může být cokoliv: určitý počet opakování, určitý stav dat nebo dokonce vnější událost. Python For Loop je speciální druh smyčky, která se používá, když znáte přesná opakování smyčky.

Python pro smyčku: Stručný průvodce zvládnutím iterace

Smyčky for ve svém kódu používáte ke zjednodušení procesu iterace sekvence nebo kolekce prvků. Může to být seznam, řetězec, slovník, sada nebo jakýkoli jiný iterovatelný objekt v Pythonu .

Pomocí cyklu for můžete provést blok kódu pro každou položku v sekvenci. Pokud například potřebujete vytisknout všechny prvky v seznamu, můžete místo psaní tiskového příkazu pro každou položku použít pouze cyklus for. Díky tomu je váš kód efektivnější, čitelnější a méně náchylný k chybám.

Než začnete psát pro smyčky, musíte pochopit základy. V tomto článku se podíváme na syntaxi cyklů Python for, terminologii používanou při práci s nimi a na to, jak je používat v různých scénářích.

Jdeme do toho!

Obsah

Jaká je syntaxe pro Python For Loops?

V Pythonu se cykly for používají k iteraci přes iterovatelné objekty. Základní syntaxe cyklu for je následující:

for variable in iterable:
    # code to execute for each item

V této syntaxi je 'proměnná' název, který zvolíte pro aktuální položku v iteraci. 'Iterable' je posloupnost nebo sbírka položek, které chcete opakovat.

Kód uvnitř smyčky, zde označený jako '# kód k provedení pro každou položku', je akce, kterou chcete provést pro každou položku v iterable.

Níže uvedený příklad ukazuje základní cyklus for v Pythonu:

cities = ['New York', 'London', 'Paris', 'Tokyo']

for city in cities:
    print(city)

Ve výše uvedeném příkladu je 'city' proměnnou a 'cities' je iterovatelná. Kód uvnitř smyčky je print(city), který vytiskne každé město v seznamu.

Python pro smyčku: Stručný průvodce zvládnutím iterace

Iterovatelné a opakovatelné objekty v Pythonu

Dalším zásadním konceptem, kterému je třeba při práci se smyčkami porozumět, je koncept iterovatelných a iterovatelných objektů.

V Pythonu je iterovatelný jakýkoli objekt schopný vracet své prvky jeden po druhém. To znamená, že můžete projít iterovatelným objektem pomocí metody, jako je smyčka.

Mezi běžné příklady iterovatelných objektů, se kterými se setkáte, patří seznamy , řetězce , n-tice a slovníky .

Když například vytvoříte seznam čísel jako [1, 2, 3, 4, 5], můžete opakovat každé číslo v seznamu. Každé číslo je prvkem iterovatelného seznamu.

Podobně, pokud máte řetězec jako 'ahoj', můžete iterovat přes každý znak v řetězci. V tomto případě je řetězec iterovatelný a každý znak ('h', 'e', ​​'l', 'l', 'o') je prvkem iterovatelného.

Níže naleznete několik příkladů použití cyklů for s různými iterovatelnými možnostmi.

1. Procházení seznamu pomocí smyčky Python For

V Pythonu je a typ datové struktury, která může obsahovat uspořádanou kolekci položek, což znamená, že můžete ukládat všechny druhy objektů – celá čísla, plovoucí čísla, řetězce a dokonce i další seznamy nebo složité objekty.

Chcete-li procházet seznam pomocí smyčky for, můžete použít následující kód:

fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:
    print(fruit)

Tento kód vytiskne všechny druhy ovoce v seznamu ovoce, jak je uvedeno níže:

Python pro smyčku: Stručný průvodce zvládnutím iterace

2. Looping through a Tuple with Python For Loop

N-tice v Pythonu je kolekce objektů, které jsou uspořádané a neměnné. To znamená, že jakmile je n-tice vytvořena, nemůžete změnit její obsah.

K prohlížení n-tice pomocí cyklu for můžete použít následující kód Pythonu:

colors = ('red', 'green', 'blue')

for color in colors:
    print(color)

Smyčka for projde všemi prvky n-tice a vytiskne je na obrazovku, jak je znázorněno na obrázku níže:

Python pro smyčku: Stručný průvodce zvládnutím iterace

3. Procházení slovníkem pomocí smyčky Python For

A v Pythonu je neuspořádaná kolekce dat uložená jako klíč a hodnota. Toto je také známé jako pár klíč–hodnota.

Chcete-li procházet slovníkem pomocí cyklu for, můžete použít následující kód Pythonu:

student = {'name': 'John', 'age': 24, 'course': 'Computer Science'}

for key, value in student.items():
    print(key, value)

Smyčka for projde všemi páry klíč-hodnota ve slovníku a vytiskne je na obrazovku, jak je uvedeno níže:

4. Procházení řetězcem pomocí smyčky Python For

Řetězec v Pythonu je posloupnost znaků. Řetězce se v Pythonu používají k záznamu textových informací a také libovolných kolekcí bajtů (jako je obsah souboru obrázku).

Chcete-li procházet řetězec v Pythonu pomocí smyčky for, můžete použít kód uvedený níže:

greeting = "Hello, world!"
for char in greeting:
    print(char)

Smyčka for vytiskne každou abecedu v řetězci na obrazovku, jak je uvedeno níže:

Python pro smyčku: Stručný průvodce zvládnutím iterace

Výše uvedené příklady ukazují, jak jsou smyčky užitečné při iteraci různých datových typů. Funkcionalitu cyklů for můžete také ovládat pomocí funkcí a příkazů ve smyčce.

V další části se podíváme na některé klíčové funkce a příkazy, které se často používají s cykly for .

Klíčové funkce a příkazy v Pythonu For Loops

Když používáte smyčky for, mohou funkce a příkazy zlepšit vaši kontrolu nad smyčkou a učinit váš kód efektivnější a čitelnější.

Níže uvádíme klíčové funkce a příkazy používané v cyklech for:

1. Jak používat funkci Range() s Python For Loop

Funkce range() umožňuje generovat posloupnost čísel. Obecně se používá pro opakování stanoveného počtu opakování.

Základní syntaxe je:

for i in range(start, stop, step):
  # your code here
  • start : volitelný parametr určující počáteční bod; ve výchozím nastavení je to 0.

  • stop : povinný parametr, který definuje koncový bod (výhradně).

  • krok : volitelný parametr udávající přírůstek s výchozí hodnotou 1.

Chcete-li jasně porozumět funkci rozsahu, podívejte se na níže uvedený příklad, kde tiskneme čísla od 1 do 5 pomocí funkce rozsahu se smyčkou for:

for i in range(5):
  print(i)

Python pro smyčku: Stručný průvodce zvládnutím iterace

2. Jak používat příkaz Break s Python For Loop

Příkaz break vám umožňuje ukončit cyklus for, když je splněna určitá podmínka. Když je v těle smyčky dosaženo klíčového slova break , smyčka se okamžitě zastaví.

Následuje příklad cyklu for s příkazem break:

for i in range(10):
  if i == 5:
    break
  print(i)

Python pro smyčku: Stručný průvodce zvládnutím iterace

Tento kód je smyčka běžící od 0 do 9. Pokud je aktuální číslo 5, smyčku okamžitě zastaví pomocí break . Tiskne tedy pouze čísla od 0 do 4. Když narazí na 5, zastaví se a další čísla nevytiskne.

3. Jak používat příkaz Continue s Python For Loop

Příkaz continue se používá k přeskočení aktuální iterace a skoku na další.

Následuje příklad příkazu continue se smyčkou for:

for i in range(5):
  if i == 3:
    continue
  print(i)

Cyklus iteruje od 0 do 4. Pokud je aktuální číslo 3, přeskočíme jej před dokončením zbytku cyklu pro tuto iteraci pomocí continue . To znamená, že vytisknete všechna čísla od 0 do 4, kromě 3.

Python pro smyčku: Stručný průvodce zvládnutím iterace

Všimněte si na obrázku výše, že číslo 3 je přeskočeno kvůli příkazu continue .

4. Jak používat prohlášení Pass

Příkaz pass je zástupný symbol, který záměrně nic nedělá. Může být použit, když potřebujete strukturu smyčky, ale zatím v ní nemáte žádný specifický kód, který by se dal spustit.

Následuje příklad příkazu pass se smyčkou for:

for i in range(5):
  pass

Tato smyčka nevypíše nic, protože příkaz pass je zástupný symbol pro budoucí kód. Smyčky jsou flexibilní a lze je upravit tak, aby vyhovovaly jakémukoli případu použití, jako je použití smyček s blokem kódu else .

Pokud si chcete vyzkoušet praktické procvičování smyček for, podívejte se na následující video:

Když začnete psát smyčky for, budete nakonec chtít skočit do pokročilých technik ve smyčkách for. Znalost pokročilých technik vám umožní psát efektivnější smyčky for pro téměř jakýkoli případ použití.

Podívejme se na některé pokročilé techniky ve smyčkách for v další části!

3 pokročilé techniky využívající Python pro smyčky

Jako programátor v Pythonu se často potřebujete zabývat kolekcemi položek, jako jsou seznamy nebo řetězce, a provádět operace s každou položkou. Chcete-li provádět tyto operace, musíte mít základní znalosti o pokročilých technikách v cyklech for.

V této části prozkoumáme některé pokročilé techniky pro použití cyklů for v Pythonu. Budeme se zabývat vnořenými smyčkami, seznamem porozumění a funkcí enumerate().

1. Jak používat vnořený Python pro smyčky

Jsou chvíle, kdy potřebujete procházet více dimenzemi dat, jako je matice nebo seznam seznamů. V takových případech můžete použít vnořené smyčky, což je smyčka uvnitř jiné smyčky. Vnořená smyčka umožňuje efektivně procházet více dimenzemi dat.

Následuje příklad vnořené smyčky for:

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

for row in matrix:
    for val in row:
        print(val, end=' ')
    print()

V tomto kódu používáme vnořenou smyčku k vytištění každého čísla v matici. Vnější smyčka prochází každou řadou a vnitřní smyčka prochází každým číslem v této řadě.

Po vytištění každého řádku začneme nový řádek. Zkrátka tiskneme celou matrici řádek po řádku.

Python pro smyčku: Stručný průvodce zvládnutím iterace

2. Jak používat Python pro smyčky pro porozumění seznamu

Pokud vytváříte nový seznam na základě existujícího seznamu nebo jiného iterovatelného seznamu, můžete použít porozumění seznamu. To vám umožní vytvořit nový seznam použitím výrazu na každou položku v iterovatelné, to vše v jediném řádku kódu.

Obecná syntaxe porozumění seznamu je:

[expression for variable in iterable if condition]

Předpokládejme, že chcete vytvořit seznam čtverců pro řadu čísel, můžete použít následující pochopení seznamu:

squares = [x ** 2 for x in range(1, 11)]
print(squares)

Tento kód vytvoří seznam čtverců pro čísla 1 až 10 pomocí jednoho řádku kódu.

Python pro smyčku: Stručný průvodce zvládnutím iterace

3. Jak používat funkci Enumerate().

Když procházíte seznamem nebo řetězcem a potřebujete znát index aktuální položky, použijte enumerate () . Vrací každou položku spolu s jejím indexem, což usnadňuje manipulaci s pozicí položek.

Následuje příklad funkce enumerate se smyčkou for:

fruits = ['apple', 'banana', 'cherry']

for idx, fruit in enumerate(fruits):
    print(f"{idx}: {fruit}")

V tomto kódu procházíme seznam ovoce, ale také sledujeme index každé položky pomocí funkce enumerate , která vrací každou položku v seznamu spolu s jejím indexem.

Takže pro každou iteraci cyklu je idx index a fruit je položka. Poté vytiskneme index následovaný ovocem. To nám dává očíslovaný seznam ovoce.

Python pro smyčku: Stručný průvodce zvládnutím iterace

Nyní, když jste prozkoumali pokročilé techniky v cyklech for, můžete začít vidět, jak flexibilní mohou být smyčky při zpracování různých scénářů. Ale jako u každého jiného nástroje je důležité vědět, kdy jej použít a kdy jiný nástroj může být vhodnější.

S ohledem na to se zaměřme na porovnání cyklů for s cykly while. To vám pomůže rozhodnout, který typ smyčky je nejvhodnější pro vaši konkrétní situaci kódování.

Pro Loop vs While Loop

V Pythonu slouží smyčky for a while různým účelům.

Cykly For se používají k iteraci po sekvencích, jako jsou seznamy nebo n-tice, a mají určitý rozsah iterací.

Zatímco smyčky na druhé straně pokračují v běhu, dokud určitá podmínka zůstává pravdivá.

# For loop example
for item in sequence:
    # Code to execute for each item in sequence

# While loop example
while condition:
    # Code to execute while condition is true

Předpokládejme, že chcete vytisknout prvních 5 čísel začínajících od 0.

Pomocí cyklu for byste napsali:

for i in range(5):
    print(i)

Cyklus for je přímočarý, když předem znáte přesný počet iterací, jako v tomto případě, kdy víte, že chcete vytisknout 5 čísel.

Na druhou stranu, pomocí while smyčky byste napsali:

i = 0
while i < 5:
    print(i)
    i += 1

V cyklu while začínáte počáteční podmínkou (i < 5). Cyklus běží, dokud podmínka přestane platit. Musíte zvýšit i v těle smyčky, jinak by běžela navždy.

Python pro smyčku: Stručný průvodce zvládnutím iterace

Smyčka for je pro tento úkol jednodušší a méně náchylná k chybám. Smyčka while však nabízí větší flexibilitu pro situace, kdy není předem znám počet iterací.

Zvažte například scénář, kdy uživatele vyzýváte k zadání, dokud nezadá platné číslo. Nevíte, kolikrát se budete muset zeptat, takže v tomto případě je vhodná smyčka while:

while True:
    user_input = input("Please enter a number: ")
    if user_input.isdigit():
        print("Thank you!")
        break
    else:
        print("Invalid input. Try again.")

Python pro smyčku: Stručný průvodce zvládnutím iterace

V tomto kódu smyčka while vyzve uživatele k zadání, dokud nezadá platné číslo. Funkce isdigit() zkontroluje, zda je vstupem číslo.

Pokud ano, vytiskne se zpráva a smyčka se ukončí pomocí příkazu break. Pokud to není číslo, vytiskne se chybová zpráva a smyčka pokračuje.

Závěrečné myšlenky

Smyčky For jsou základním nástrojem ve vaší sadě programovacích nástrojů. Poskytují způsob, jak efektivně provádět opakující se úkoly. Pochopením pro smyčky získáte schopnost manipulovat s daty, automatizovat úkoly a řešit složité problémy pomocí pouhých několika řádků kódu.

Zvládnutím smyček for můžete svůj kód učinit čitelnějším, efektivnější a více Pythonic. Praxe je klíčem k tomu, abyste se s touto konstrukcí cítili pohodlně. Se znalostmi získanými z této příručky jste dobře vybaveni k tomu, abyste se vypořádali s širokou řadou programovacích výzev pomocí smyček Python for!


Tabulky proporcí a četností v Excelu

Tabulky proporcí a četností v Excelu

Chtěli jsme se ponořit do tabulek četností v Excelu a také do tabulek proporcí. Podívejte se, co to je a kdy je použít.

Ako nainštalovať DAX Studio & Tabular Editor v LuckyTemplates

Ako nainštalovať DAX Studio & Tabular Editor v LuckyTemplates

Zistite, ako stiahnuť a nainštalovať DAX Studio a Tabular Editor 3 a ako ich nakonfigurovať na použitie v LuckyTemplates a v Exceli.

LuckyTemplates Vizualizácia tvarovej mapy pre priestorovú analýzu

LuckyTemplates Vizualizácia tvarovej mapy pre priestorovú analýzu

Tento blog obsahuje vizualizáciu Shape Map pre priestorovú analýzu v LuckyTemplates. Ukážem vám, ako môžete efektívne využiť túto vizualizáciu s jej funkciami a prvkami.

LuckyTemplates Finančné výkazníctvo: Prideľovanie výsledkov šablónam v každom jednom riadku

LuckyTemplates Finančné výkazníctvo: Prideľovanie výsledkov šablónam v každom jednom riadku

V tomto návode predstavujem jedinečný nápad týkajúci sa finančného výkazníctva, ktorý spočíva v prideľovaní výsledkov na vopred určené šablóny tabuliek v rámci LuckyTemplates.

DAX měří v LuckyTemplates pomocí Measure Branching

DAX měří v LuckyTemplates pomocí Measure Branching

Vytvářejte míry DAX v LuckyTemplates pomocí existujících mír nebo vzorců. Tomu říkám technika větvení opatření.

Najvýkonnejšie volanie funkcie v LuckyTemplates

Najvýkonnejšie volanie funkcie v LuckyTemplates

V tomto blogu preskúmajte množinu údajov LuckyTemplates, najvýkonnejšie volanie funkcií, ktoré vám prináša tisíce funkcií M a DAX na dosah ruky.

Techniky modelovania údajov na organizáciu opatrení DAX

Techniky modelovania údajov na organizáciu opatrení DAX

V dnešnom návode sa podelím o niekoľko techník modelovania údajov o tom, ako lepšie usporiadať vaše merania DAX pre efektívnejší pracovný tok.

LuckyTemplates Financial Dashboard: Kompletné tipy na prispôsobenie tabuľky

LuckyTemplates Financial Dashboard: Kompletné tipy na prispôsobenie tabuľky

LuckyTemplates je skvelý nástroj pre finančné výkazníctvo. Tu je návod, ako vytvoriť prispôsobené tabuľky pre váš finančný dashboard LuckyTemplates.

Osvedčené postupy toku jazyka Power Query

Osvedčené postupy toku jazyka Power Query

V tomto návode sa bude diskutovať o toku jazyka Power Query a o tom, ako môže pomôcť vytvoriť hladkú a efektívnu zostavu údajov.

LuckyTemplates vlastní ikony | Vizualizační technika PBI

LuckyTemplates vlastní ikony | Vizualizační technika PBI

Budu diskutovat o jedné z mých oblíbených technik kolem vlastních ikon LuckyTemplates, která používá vlastní ikony dynamickým způsobem ve vizuálech LuckyTemplates.