Python Bucle For & While: Instrucțiunea Enumerare, Break, Continue
Ce este Loop?
Buclele pot executa un bloc de cod de un număr de ori până când este îndeplinită o anumită condiție. Utilizarea lor este destul de comună în programare. Spre deosebire de alte limbaje de programare care au bucla For, bucla while, dowhile etc.
Ce este For Loop?
Bucla For este folosită pentru a itera elementele unei secvențe. Este adesea folosit atunci când aveți o bucată de cod pe care doriți să o repetați „n” de câte ori.
Ce este While Loop?
While Loop este folosit pentru a repeta un bloc de cod. În loc să ruleze blocul de cod o dată, execută blocul de cod de mai multe ori până când este îndeplinită o anumită condiție.
Cum se folosește „While Loop”
În timp ce bucla face exact același lucru pe care îl face „instrucțiunea if”, dar în loc să ruleze blocul de cod o dată, ei sar înapoi la punctul în care a început codul și repetă din nou întregul proces.
Sintaxă
while expression Statement
Exemplu:
# #Example file for working with loops # x=0 #define a while loop while(x <4): print(x) x = x+1
Ieșire preconizată:
0 1 2 3
- Linia de cod 4: Variabila x este setată la 0
- Linia de cod 7: bucla While verifică condiția x<4. Valoarea curentă a lui x este 0. Condiția este adevărată. Fluxul de control intră în bucla while
- Linia de cod 8: Se imprimă valoarea lui x
- Linia de cod 9: x este incrementat cu 1. Fluxul de control se întoarce la linia 7. Acum valoarea lui x este 1, care este mai mică decât 4. Condiția este adevărată și din nou se execută bucla while. Aceasta continuă până când x devine 4, iar condiția while devine falsă.
Cum se folosește „For Loop”
In Python, „for bucle” sunt numite iteratoare.
La fel ca bucla while, „For Loop” este, de asemenea, folosit pentru a repeta programul.
Dar spre deosebire de bucla while care depinde de condiția adevărată sau falsă. „For Loop” depinde de elementele pe care trebuie să le repete.
Exemplu:
# #Example file for working with loops # x=0 #define a while loop # while(x <4): # print x # x = x+1 #Define a for loop for x in range(2,7): print(x)
Ieșire preconizată:
2 3 4 5 6
For Loop iterează cu numărul declarat în interval.
De exemplu,
Pentru Loop pentru x în interval (2,7)
Când acest cod este executat, va imprima numărul între 2 și 7 (2,3,4,5,6). În acest cod, numărul 7 nu este considerat în interiorul intervalului.
For Loops poate fi folosit și pentru un set de alte lucruri și nu doar pentru un număr. Vom vedea subțire în secțiunea următoare.
Cum se utilizează For Loop for String
În acest pas, vom vedea cum „for loops” poate fi folosit și pentru alte lucruri în afară de numere.
Exemplu:
#use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for m in Months: print(m)
Ieșire preconizată:
Jan Feb Mar April May June
Linia de cod 3: stocăm lunile („Ian, februarie, martie, aprilie, mai, iunie”) în luni variabile
Linia de cod 4: Repetăm bucla for peste fiecare valoare în luni. Valoarea curentă a lunilor este stocată în variabila m
Linia de cod 5: Tipăriți luna
Cum să utilizați instrucțiunile break în bucla For
Breakpoint este o funcție unică în bucla For care vă permite să întrerupeți sau să opriți execuția buclei for
Exemplu:
#use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): if (x == 15): break #if (x % 2 == 0) : continue print(x)
Ieșire preconizată:
10 11 12 13 14
În acest exemplu, am declarat numerele de la 10 la 20, dar dorim ca bucla noastră for să se termine la numărul 15 și să nu mai execute. Pentru aceasta, declarăm funcția break prin definirea (x==15): break, astfel încât de îndată ce codul apelează numărul 15 se termină programul Linia de cod 10 declara variabila x între intervalul (10, 20)
- Linia de cod 11 declară condiția pentru punctul de întrerupere la x==15,
- Linia de cod 12 verifică și repetă pașii până ajunge la numărul 15
- Linia de cod 13 Imprimați rezultatul în ieșire
Cum să utilizați „instrucțiunea de continuare” în bucla For
Funcția Continue, după cum indică și numele, va termina iterația curentă a buclei for DAR va continua execuția iterațiilor rămase.
Exemplu
#use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): #if (x == 15): break if (x % 5 == 0) : continue print(x)
Ieșire preconizată:
11 12 13 14 16 17 18 19
Instrucțiunea Continue poate fi folosită în bucla for atunci când doriți să obțineți o anumită valoare din listă.
În exemplul nostru, am declarat valoarea 10-20, dar între aceste numere vrem doar acele numere care NU sunt divizibile cu 5 sau cu alte cuvinte care nu dau zero atunci când sunt împărțite la 5.
Deci, în intervalul nostru (10,11, 12….19,20) cad doar 3 numere (10,15,20) care sunt divizibile cu 5 și restul nu sunt.
Deci, cu excepția numărului 10,15 și 20, „bucla for” nu va continua și va tipări acele numere ca rezultat.
- Linia de cod 10 declară variabila x pentru intervalul (10, 20)
- Linia de cod 12 declară condiția pentru x împărțit la 5=0 continuă
- Linia de cod 13 imprimă rezultatul
Ce este enumerate() în Python?
enumerate() ÎN PYTHON este o funcție încorporată utilizată pentru alocarea unui index fiecărui element al obiectului iterabil. Acesta adaugă o buclă asupra obiectelor iterabile în timp ce ține evidența articolului curent și returnează obiectul într-o formă enumerabilă. Acest obiect poate fi folosit într-o buclă for pentru a-l converti într-o listă folosind metoda list().
Exemplu:
Funcția de enumerare este folosit pentru numerotarea sau indexarea membrilor din listă.
Să presupunem că vrem să facem numerotarea lunii noastre ( ian, februarie, martie, .... iunie), așa că declarăm variabila i care enumeră numerele în timp ce m va tipări numărul lunii în listă.
#use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print(i,m) # use the break and continue statements #for x in range (10,20): #if (x == 15): break #if (x % 5 == 0) : continue #print x
Ieșire preconizată:
0 Jan 1 Feb 2 Mar 3 April 4 May 5 June
Când codul este executat, ieșirea funcției de enumerare returnează numele lunilor cu un număr de index precum (0-ian), (1-feb), (2-martie), etc.
- Linia de cod 3 declară lista lunilor [ ian, februarie, ... iunie]
- Linia de cod 4 declară variabilele i și m pentru bucla For
- Linia de cod 5 va imprima rezultatul și va intra din nou în bucla For pentru restul lunilor pentru enumerare
Exemplu practic
Să vedem un alt exemplu pentru For Loop pentru a repeta aceeași declarație de nenumărate ori.
Python buclă | Cod de lucru pentru toate exercițiile |
---|---|
Cod pentru bucla while |
x=0 while (x<4): print (x) x= x+1 |
Exemplu simplu pentru buclă |
x=0 for x in range (2,7): print (x) |
Utilizarea buclei for în șir |
Months = ["Jan","Feb","Mar","April","May","June"] for m in (Months): print (m) |
Utilizați instrucțiunea break-in bucla for |
for x in range (10,20): if (x == 15): break print (x) |
Utilizarea instrucțiunii Continue în bucla for |
for x in range (10,20): if (x % 5 == 0): continue print (x) |
Cod pentru „funcția de enumerare” cu „bucla for” |
Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print (i,m) |
Cum se folosește bucla for pentru a repeta aceeași declarație de mai multe ori
Puteți folosi bucla for chiar și pentru a repeta aceeași declarație de mai multe ori. Aici, în exemplu, am tipărit cuvântul „guru99” de trei ori.
Exemplu: Pentru a repeta același număr de ori, am declarat numărul în variabila i (i în 123). Deci, când rulați codul așa cum se arată mai jos, se tipărește declarația (guru99) că de multe ori numărul declarat pentru variabila în (i în 123).
for i in '123': print ("guru99",i,)
Ieșire preconizată:
guru99 1 guru99 2 guru99 3
Ca și alte limbaje de programare, Python folosește, de asemenea, o buclă, dar în loc să folosească o serie de bucle diferite, este limitată la doar două bucle „While loop” și „for loop”.
- Buclele while sunt executate pe baza faptului că declarația condiționată este adevărată sau falsă.
- Buclele For sunt numite iteratoare, acesta repetă elementul pe baza setului de condiții
- Python Buclele For pot fi folosite și pentru un set de diverse alte lucruri (specificând colecția de elemente pe care dorim să o trecem în buclă)
- Punctul de întrerupere este folosit în bucla For pentru a întrerupe sau a încheia programul la un anumit punct
- Instrucțiunea Continue va continua să imprime declarația și va tipări rezultatul conform condițiilor setate
- Funcția de enumerare în „bucla for” returnează membrul colecției pe care îl privim cu numărul de index
Python 2 Exemplu
Codurile de mai sus sunt Python 3 exemple, dacă vrei să alergi Python 2 vă rugăm să luați în considerare următorul cod.
# How to use "While Loop" #Example file for working with loops # x=0 #define a while loop while(x <4): print x x = x+1 #How to use "For Loop" #Example file for working with loops # x=0 #define a while loop # while(x <4): # print x # x = x+1 #Define a for loop for x in range(2,7): print x #How to use For Loop for String #use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for m in Months: print m #How to use break statements in For Loop #use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): if (x == 15): break #if (x % 2 == 0) : continue print x #How to use "continue statement" in For Loop #use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): #if (x == 15): break if (x % 5 == 0) : continue print x #How to use "enumerate" function for "For Loop" #use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print i,m # use the break and continue statements #for x in range (10,20): #if (x == 15): break #if (x % 5 == 0) : continue #print x
ieșire:
0 1 2 3 2 3 4 5 6 Jan Feb Mar April May June 10 11 12 13 14 11 12 13 14 16 17 18 19 0 Jan 1 Feb 2 Mar 3 April 4 May 5 June