Ce este Sinele în Python: Exemple din lumea reală
Ce este Sinele în Python: Exemple din lumea reală
Unul dintre cele mai interesante concepte din limbajele de programare este buclele. Imaginează-ți că te confrunți cu o sarcină. Este simplu, dar repetitiv, cum ar fi numărarea de la 1 la 100. Acum, puteți face acest lucru manual, câte un număr. Dar acest lucru ar consuma timp și nu ar fi deosebit de eficient. Aici intervin buclele în programare.
O buclă este o structură de control care vă permite să repetați un set de instrucțiuni până când este îndeplinită o anumită condiție. Condiția poate fi orice: un anumit număr de repetări, o anumită stare a datelor sau chiar un eveniment extern. O buclă Python For este un tip special de buclă folosită atunci când cunoașteți repetițiile exacte pentru o buclă.
Folosiți buclele for în codul dvs. pentru a simplifica procesul de iterare pe o secvență sau o colecție de elemente. Aceasta poate fi o listă, un șir, un dicționar, un set sau orice alt obiect iterabil în Python .
Folosind o buclă for, puteți executa un bloc de cod pentru fiecare articol din secvență. De exemplu, dacă trebuie să tipăriți toate elementele dintr-o listă, în loc să scrieți o declarație de tipărire pentru fiecare articol, puteți utiliza doar o buclă for. Acest lucru face codul dvs. mai eficient, mai lizibil și mai puțin predispus la erori.
Înainte de a începe să scrieți pentru bucle, trebuie să înțelegeți elementele de bază. În acest articol, vom analiza sintaxa pentru buclele Python for, terminologia folosită atunci când lucrați cu acestea și cum să le folosim în diferite scenarii.
Să intrăm în ea!
Cuprins
Care este sintaxa pentru buclele Python For?
În Python, buclele for sunt folosite pentru a repeta peste obiecte iterabile. Sintaxa de bază a unei bucle for este următoarea:
for variable in iterable:
# code to execute for each item
În această sintaxă, „variabilă” este numele pe care îl alegeți pentru elementul curent din iterație. „Iterabil” este secvența sau colecția de elemente pe care doriți să o iterați.
Codul din interiorul buclei, notat aici ca „# cod de executat pentru fiecare articol”, este acțiunea pe care doriți să o efectuați pentru fiecare articol din iterabil.
Exemplul de mai jos arată o buclă for de bază în Python:
cities = ['New York', 'London', 'Paris', 'Tokyo']
for city in cities:
print(city)
În exemplul de mai sus, „oraș” este variabila, iar „orașe” este iterabilul. Codul din interiorul buclei este print(city), care tipărește fiecare oraș din listă.
Iterabili Python și obiecte iterabile
Un alt concept crucial de înțeles atunci când lucrați cu bucle este conceptul de iterabile și obiecte iterabile.
În Python, un iterabil este orice obiect capabil să-și returneze elementele pe rând. Aceasta înseamnă că puteți trece prin obiectul iterabil folosind o metodă precum o buclă.
Exemplele comune de obiecte iterabile pe care le veți întâlni includ liste , șiruri , tupluri și dicționare .
De exemplu, când creați o listă de numere precum [1, 2, 3, 4, 5], puteți repeta fiecare număr din listă. Fiecare număr este un element al listei iterabile.
În mod similar, dacă aveți un șir precum „bună ziua”, puteți repeta fiecare caracter din șir. În acest caz, șirul este iterabilul, iar fiecare caracter ('h', 'e', 'l', 'l', 'o') este un element al iterabilului.
Mai jos, veți găsi câteva exemple de utilizare a buclelor for cu diferite iterabile.
1. Buclă printr-o listă cu o buclă Python For
În Python, o listă este un tip de structură de date care poate deține o colecție ordonată de articole, ceea ce înseamnă că puteți stoca tot felul de obiecte - numere întregi, flotanți, șiruri de caractere și chiar alte liste sau obiecte complexe.
Pentru a parcurge o listă cu o buclă for, puteți utiliza următorul cod:
fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:
print(fruit)
Acest cod va imprima toate fructele din lista de fructe, după cum se arată mai jos:
2. Buclă printr-un tuplu cu un Python For Loop
Un tuplu în Python este o colecție de obiecte care sunt ordonate și imuabile. Aceasta înseamnă că, odată ce un tuplu este creat, nu-i puteți modifica conținutul.
Pentru a căuta printr-un tuplu cu bucla for, puteți utiliza următorul cod Python:
colors = ('red', 'green', 'blue')
for color in colors:
print(color)
Bucla for va trece prin toate elementele tuplului și le va imprima pe ecran, așa cum se arată în imaginea de mai jos:
3. Buclă printr-un dicționar cu un Python For Loop
Un dicționar în Python este o colecție neordonată de date stocate ca o cheie și o valoare. Aceasta este cunoscută și ca pereche cheie-valoare.
Pentru a parcurge un dicționar cu bucla for, puteți utiliza următorul cod Python:
student = {'name': 'John', 'age': 24, 'course': 'Computer Science'}
for key, value in student.items():
print(key, value)
Bucla for va itera toate perechile cheie-valoare din dicționar și le va imprima pe ecran, așa cum se arată mai jos:
4. Buclă printr-un șir cu o buclă Python For
Un șir în Python este o secvență de caractere. Șirurile de caractere sunt folosite în Python pentru a înregistra informații textuale, precum și colecții arbitrare de octeți (cum ar fi conținutul unui fișier imagine).
Pentru a trece printr-un șir în Python folosind bucla for, puteți folosi codul de mai jos:
greeting = "Hello, world!"
for char in greeting:
print(char)
Bucla for va imprima fiecare alfabet din șir pe ecran, așa cum se arată mai jos:
Exemplele de mai sus arată cât de utile sunt buclele atunci când iterați pe diferite tipuri de date. De asemenea, puteți controla funcționalitatea buclelor dvs. for folosind funcții și instrucțiuni din bucla.
Să ne uităm la câteva funcții și instrucțiuni cheie care sunt utilizate frecvent cu buclele for în secțiunea următoare.
Funcții și instrucțiuni cheie în buclele Python For
Când utilizați bucle for, funcțiile și instrucțiunile vă pot îmbunătăți controlul asupra buclei și vă pot face codul mai eficient și mai ușor de citit.
Am enumerat mai jos funcțiile și instrucțiunile cheie utilizate în buclele for:
1. Cum se utilizează funcția Range() cu o buclă Python For
Funcția range() vă permite să generați o secvență de numere. Este folosit în general pentru repetarea unui anumit număr de ori.
Sintaxa de bază este:
for i in range(start, stop, step):
# your code here
start : un parametru opțional care specifică punctul de plecare; implicit, este 0.
stop : un parametru necesar care definește punctul final (exclusiv).
pas : un parametru opțional care indică incrementul, cu o valoare implicită de 1.
Pentru a vă oferi o înțelegere clară a funcției de interval, aruncați o privire la exemplul de mai jos în care imprimăm numere de la 1 la 5 folosind funcția de interval cu o buclă for:
for i in range(5):
print(i)
2. Cum să utilizați instrucțiunea Break cu o buclă Python For
Instrucțiunea break vă permite să părăsiți o buclă for atunci când este îndeplinită o anumită condiție. Când se ajunge la cuvântul cheie break în corpul buclei, bucla se oprește imediat.
Următorul este un exemplu de buclă for cu o instrucțiune break:
for i in range(10):
if i == 5:
break
print(i)
Acest cod este o buclă care rulează de la 0 la 9. Dacă numărul curent este 5, oprește imediat bucla folosind break . Deci, imprimă doar numerele de la 0 la 4. Când atinge 5, se oprește și nu mai tipărește numere.
3. Cum să utilizați instrucțiunea Continue cu o buclă Python For
Instrucțiunea continue este folosită pentru a sări peste iterația curentă și pentru a trece la următoarea.
Următorul este un exemplu de instrucțiune continue cu bucla for:
for i in range(5):
if i == 3:
continue
print(i)
Bucla se repetă de la 0 la 4. Dacă numărul curent este 3, îl omitem înainte de a finaliza restul buclei pentru acea iterație folosind continue . Aceasta înseamnă că imprimați toate numerele de la 0 la 4, cu excepția lui 3.
Observați în imaginea de mai sus că numărul 3 este omis din cauza declarației continue .
4. Cum să utilizați Declarația de trecere
Declarația de trecere este un substituent care nu face nimic intenționat. Poate fi folosit atunci când aveți nevoie de structura buclei, dar nu aveți încă niciun cod specific de executat în ea.
Următorul este un exemplu de instrucțiune pass cu o buclă for:
for i in range(5):
pass
Această buclă nu va scoate nimic, deoarece instrucțiunea de trecere este un substituent pentru codul viitor. Buclele sunt flexibile și pot fi ajustate pentru a se potrivi în orice caz de utilizare, cum ar fi utilizarea buclelor cu blocul de cod else .
Dacă doriți să exersați practic cu buclele for, urmăriți următorul videoclip:
Pe măsură ce începeți să scrieți pentru bucle, veți dori în cele din urmă să sari în tehnicile avansate în bucle for. Cunoașterea tehnicilor avansate vă va permite să scrieți mai eficient bucle for pentru aproape orice caz de utilizare.
Să ne uităm la câteva dintre tehnicile avansate din buclele for în secțiunea următoare!
3 Tehnici avansate folosind Python For Loops
În calitate de programator Python, de multe ori trebuie să vă ocupați de colecții de elemente, cum ar fi liste sau șiruri de caractere, și să efectuați operații pe fiecare articol. Pentru a efectua aceste operațiuni, va trebui să aveți o înțelegere de bază a tehnicilor avansate în bucle for.
În această secțiune, vom explora câteva tehnici avansate de utilizare a buclelor for în Python. Vom acoperi buclele imbricate, listele de înțelegere și funcția enumerate().
1. Cum să utilizați Python imbricat pentru bucle
Există momente când trebuie să treceți peste mai multe dimensiuni de date, cum ar fi o matrice sau o listă de liste. În astfel de cazuri, puteți utiliza bucle imbricate, care este o buclă în interiorul unei alte bucle. O buclă imbricată vă permite să traversați mai multe dimensiuni ale datelor în mod eficient.
Următorul este un exemplu de buclă for imbricată:
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for row in matrix:
for val in row:
print(val, end=' ')
print()
În acest cod, folosim o buclă imbricată pentru a tipări fiecare număr într-o matrice. Bucla exterioară trece peste fiecare rând, iar bucla interioară trece prin fiecare număr din acel rând.
După imprimarea fiecărui rând, începem o nouă linie. Pe scurt, imprimăm întreaga matrice rând cu rând.
2. Cum se utilizează Python For Loops pentru înțelegerea listelor
Dacă creați o nouă listă bazată pe o listă existentă sau pe alt tip iterabil, puteți utiliza lista de înțelegere. Vă permite să creați o nouă listă prin aplicarea unei expresii fiecărui element dintr-un iterabil, totul într-o singură linie de cod.
Sintaxa generală a listelor de înțelegere este:
[expression for variable in iterable if condition]
Să presupunem că doriți să creați o listă de pătrate pentru o serie de numere, puteți utiliza următoarea înțelegere a listei:
squares = [x ** 2 for x in range(1, 11)]
print(squares)
Acest cod creează o listă de pătrate pentru numerele de la 1 la 10 folosind o singură linie de cod.
3. Cum se utilizează funcția Enumerate().
Când parcurgeți o listă sau șir și trebuie să cunoașteți indexul articolului curent, utilizați funcția enumerate() . Returnează fiecare articol împreună cu indexul său, facilitând gestionarea poziției articolelor.
Următorul este un exemplu de funcție de enumerare cu o buclă for:
fruits = ['apple', 'banana', 'cherry']
for idx, fruit in enumerate(fruits):
print(f"{idx}: {fruit}")
În acest cod, parcurgem lista de fructe, dar urmărim și indexul fiecărui articol folosind funcția de enumerare , care returnează fiecare articol din listă împreună cu indexul său.
Deci, pentru fiecare iterație a buclei, idx este indicele și fruit este elementul. Apoi, tipărim indexul urmat de fructe. Aceasta ne oferă o listă numerotată de fructe.
Acum că ați explorat tehnicile avansate în buclele for, puteți începe să vedeți cât de flexibile pot fi buclele în gestionarea diferitelor scenarii. Dar, ca în cazul oricărui instrument, este esențial să știți când să îl utilizați și când un alt instrument ar putea fi mai potrivit.
Având în vedere acest lucru, să ne concentrăm asupra comparării buclelor for cu buclele while. Acest lucru vă va ajuta să decideți ce tip de buclă se potrivește cel mai bine pentru situația dvs. de codare specifică.
For Loop vs While Loop
În Python, buclele for și while servesc unor scopuri diferite.
Buclele For sunt folosite pentru a repeta peste secvențe, cum ar fi liste sau tupluri, și au un interval de iterație definit.
Buclele While , pe de altă parte, continuă să ruleze atâta timp cât o anumită condiție rămâne adevărată.
# 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
Să presupunem că doriți să tipăriți primele 5 numere începând de la 0.
Folosind o buclă for, ai scrie:
for i in range(5):
print(i)
Bucla for este simplă atunci când știți numărul exact de iterații în prealabil, ca în acest caz în care știți că doriți să imprimați 5 numere.
Pe de altă parte, folosind o buclă while, ai scrie:
i = 0
while i < 5:
print(i)
i += 1
În bucla while, începeți cu o condiție inițială (i < 5). Bucla continuă să ruleze până când condiția nu mai este adevărată. Trebuie să incrementați i în corpul buclei, altfel ar rula pentru totdeauna.
Bucla for este mai simplă și mai puțin predispusă la erori pentru această sarcină. Dar bucla while oferă mai multă flexibilitate pentru situațiile în care numărul de iterații nu este cunoscut în avans.
De exemplu, luați în considerare un scenariu în care solicitați utilizatorului introducerea până când acesta introduce un număr valid. Nu știi de câte ori va trebui să întrebi, așa că o buclă while este potrivită în acest caz:
while True:
user_input = input("Please enter a number: ")
if user_input.isdigit():
print("Thank you!")
break
else:
print("Invalid input. Try again.")
În acest cod, bucla while continuă să solicite utilizatorului introducerea până când introduce un număr valid. Funcția isdigit() verifică dacă intrarea este un număr.
Dacă este, un mesaj este tipărit și bucla este ieșită folosind instrucțiunea break. Dacă nu este un număr, este tipărit un mesaj de eroare și bucla continuă.
Gânduri finale
Buclele For sunt un instrument esențial în setul de instrumente de programare. Ele oferă o modalitate de a efectua sarcini repetitive în mod eficient. Înțelegând buclele for, obțineți capacitatea de a manipula datele, de a automatiza sarcini și de a rezolva probleme complexe cu doar câteva linii de cod.
Prin stăpânirea buclelor for, vă puteți face codul mai lizibil, mai eficient și mai Pythonic. Practica este cheia pentru a deveni confortabil cu acest construct. Cu cunoștințele dobândite din acest ghid, sunteți bine echipat pentru a aborda o gamă largă de provocări de programare folosind Python pentru bucle!
Ce este Sinele în Python: Exemple din lumea reală
Veți învăța cum să salvați și să încărcați obiecte dintr-un fișier .rds în R. Acest blog va trata, de asemenea, cum să importați obiecte din R în LuckyTemplates.
În acest tutorial despre limbajul de codare DAX, aflați cum să utilizați funcția GENERATE și cum să schimbați în mod dinamic titlul unei măsuri.
Acest tutorial va acoperi cum să utilizați tehnica Multi Threaded Dynamic Visuals pentru a crea informații din vizualizările dinamice de date din rapoartele dvs.
În acest articol, voi trece prin contextul filtrului. Contextul de filtrare este unul dintre subiectele majore despre care orice utilizator LuckyTemplates ar trebui să învețe inițial.
Vreau să arăt cum serviciul online LuckyTemplates Apps poate ajuta la gestionarea diferitelor rapoarte și informații generate din diverse surse.
Aflați cum să vă calculați modificările marjei de profit folosind tehnici precum măsurarea ramificării și combinarea formulelor DAX în LuckyTemplates.
Acest tutorial va discuta despre ideile de materializare a cache-urilor de date și despre modul în care acestea afectează performanța DAX-ului în furnizarea de rezultate.
Dacă încă utilizați Excel până acum, atunci acesta este cel mai bun moment pentru a începe să utilizați LuckyTemplates pentru nevoile dvs. de raportare a afacerii.
Ce este LuckyTemplates Gateway? Tot ce trebuie să știți