logo

Rozdíl mezi smyčkou for a smyčkou while v Pythonu

V tomto článku se dozvíme o rozdílu mezi smyčkou for a smyčkou while v Pythonu. V Pythonu jsou k dispozici dva typy smyček ' pro smyčku ' a ' zatímco smyčka ' . Cyklus je sada příkazů, které se používají k provedení sady příkazů více než jednou. Chceme-li například vytisknout Hello world 100krát, musíme 100krát napsat příkaz k tisku, což je zdlouhavý úkol, ale pomocí smyček to zvládneme na pár řádcích kódu. V tomto článku se naučíme oba typy smyček samostatně a poté jejich rozdíly.

Pro Loop Vs Zatímco Loop Banner



Smyčka For v Pythonu

V Pythonu, a ' pro smyčku ' se používá k iteraci sekvence položek, jako je a Pythonská n-tice , seznam , tětiva nebo rozsah . Cyklus provede blok příkazů pro každou položku v sekvenci.

Python pro vývojový diagram smyčky

Smyčka For v Pythonu

Pro vývojový diagram smyčky

Syntaxe cyklu Python for

V níže uvedené syntaxi je for klíčové slovo, var je název proměnné a iterable je objekt, který lze opakovat nebo opakovat pomocí cyklu for. Objekty jako n-tice, seznamy, množiny, slovníky, řetězce atd. se nazývají iterovatelné. Můžeme také použít funkci range() místo iterable.



pro byl v iterovatelné :

# prohlášení

Python pro smyčku (s příklady)



V níže uvedeném příkladu jsme vytvořili seznam položek a poté jsme seznamem iterovali pomocí cyklu for k vytištění položek v seznamu.

Python3




# Create a list of items> items>=> [>'pen'>,>'notebook'>,> >'pencil'>,>'lunch box'>]> > # Run a loop to print> # items in a list> for> item>in> items:> >print>(item)>

>

>

Výstup:

pen notebook pencil lunch box>

Zatímco Loop v Pythonu

v Python, smyčka while se používá k opakovanému provádění bloku příkazů, když je podmínka pravdivá. Smyčka bude pokračovat, dokud podmínka zůstane pravdivá.

Python při smyčkování vývojového diagramu

Zatímco Loop v Pythonu

Zatímco smyčka Vývojový diagram

Syntaxe cyklu Python While

V cyklu while je podmínka zapsána hned za 'zatímco' klíčové slovo a pak napíšeme sadu příkazů k provedení nějakého úkolu.

zatímco stav :

# Sada prohlášení

Python while Loop (s příklady)

V tomto příkladu používáme smyčku while k provedení úlohy, kterou jsme provedli v příkladu smyčky for. Zde po deklaraci seznamu položek inicializujeme index s 0 a uložíme délku seznamu položek do proměnné ‘items_len’ poté běží smyčka while, ve které jsme zadali podmínku, která spustí smyčku až do hodnoty the index je méně než items_len . Uvnitř cyklu while vytiskneme položky seznamu položek pomocí indexování a zvýšíme hodnotu indexu o 1, abychom mohli seznam iterovat.

Python3




# Create a list of items> items>=> [>'pen'>,>'notebook'>,> >'pencil'>,>'lunch box'>]> > # Declare a index> index>=> 0> > # Store length of items list> items_len>=> len>(items)> > # Run a loop to print> # items in a list> while> index print(items[index]) index = index+1>

>

>

Výstup:

pen notebook pencil lunch box>

Když v cyklu for a while není zadána žádná podmínka?

V tomto případě, když podmínka není dána, naběhnou do nekonečné smyčky.

Python pro smyčku:

Python3




a>=> [>1>]> for> i>in> a:> >print>(>'GFG'>)> >a.append(i)>

>

>

Python While Loop:

Python3




while> True>:> >print>(>'GFG'>)>

>

>

Obě smyčky poběží nekonečně dlouho a tisknou se GFG .

jquery toto kliknutí

Rozdíl mezi smyčkou for a smyčkou while v Pythonu

Nyní porovnáme obě smyčky v Pythonu, abychom pochopili, kde je použít 'pro smyčku' a kde použít 'smyčka během' .

Pro smyčku

Zatímco smyčka

Cyklus For se používá k iteraci sekvence položek.

Smyčka while se používá k opakovanému provádění bloku příkazů, když je podmínka pravdivá.

Cykly For jsou navrženy pro iteraci přes posloupnost položek. Např. seznam, n-tice atd.

Smyčka while se používá, když není předem znám počet iterací nebo když chceme opakovat blok kódu, dokud není splněna určitá podmínka.

Cyklus For vyžaduje sekvenci k iteraci.

Zatímco smyčka vyžaduje počáteční podmínku, která je testována na začátku smyčky.

Cyklus For se obvykle používá pro iteraci přes pevnou sekvenci položek

Zatímco smyčka se používá pro složitější situace řídicího toku.

Cyklus For je při iteraci sekvencí efektivnější než smyčka while, protože počet iterací je předem určen a smyčku lze podle toho optimalizovat.

Zatímco smyčka může být účinnější v určitých situacích, kdy lze testovaný stav rychle vyhodnotit.