Înapoi la blog
#bucle#for#while#python

Ce sunt buclele și de ce sunt importante?

Buclele sunt una dintre cele mai puternice unelte din programare. Îți arătăm ce sunt, cum funcționează for și while în Python și când să folosești fiecare.

Imaginează-ți că trebuie să scrii pe ecran numerele de la 1 la 100. Le-ai scrie pe rând, manual, cu o sută de linii de print? Sigur că nu. Aici intervin buclele — instrumentul care îi spune calculatorului: „repetă lucrul ăsta de mai multe ori".

Ce este o buclă?

O buclă (în engleză loop) este o structură care repetă un bloc de cod până când o condiție e îndeplinită. În loc să scrii aceeași instrucțiune de zece ori, o scrii o dată și îi spui calculatorului de câte ori s-o execute.

În Python avem două tipuri principale de bucle:

  • bucla for — când știm dinainte de câte ori repetăm;
  • bucla while — când repetăm cât timp o condiție rămâne adevărată.

Bucla for

Bucla for parcurge un șir de valori, unul câte unul. Cel mai des e folosită împreună cu funcția range.

# Afișează numerele de la 1 la 5
for i in range(1, 6):
    print(i)

Aici range(1, 6) generează valorile 1, 2, 3, 4, 5 (limita din dreapta nu e inclusă). Variabila i ia pe rând fiecare valoare, iar codul din interior se execută o dată pentru fiecare.

Putem parcurge și o listă direct:

fructe = ["mere", "pere", "banane"]
for fruct in fructe:
    print(f"Îmi plac {fruct}")

Bucla while

Bucla while repetă cât timp o condiție este adevărată. E utilă când nu știm exact câte repetări vom face.

# Numără invers de la 5 la 1
numar = 5
while numar > 0:
    print(numar)
    numar = numar - 1
print("Start!")

La fiecare trecere, Python verifică condiția numar > 0. Când numar ajunge la 0, condiția devine falsă și bucla se oprește.

Atenție: dacă uiți să modifici variabila din condiție (aici numar = numar - 1), bucla nu se mai oprește niciodată — se numește buclă infinită și e o greșeală clasică a începătorilor.

Când folosesc for și când while?

SituațieBucla potrivită
Știu numărul exact de repetărifor
Parcurg o listă sau un textfor
Repet până la o condiție necunoscutăwhile
Aștept input valid de la utilizatorwhile

De ce sunt buclele atât de importante?

  1. Economisesc timp — scrii o dată, rulezi de mii de ori.
  2. Reduc erorile — mai puțin cod copiat înseamnă mai puține greșeli.
  3. Fac posibile lucruri reale — orice aplicație care procesează date, animă ceva pe ecran sau citește un fișier folosește bucle.

Un exemplu practic: să calculăm suma primelor 100 de numere naturale.

suma = 0
for i in range(1, 101):
    suma = suma + i
print(f"Suma este {suma}")  # 5050

Fără bucle, ar fi trebuit să scrii 100 de adunări. Cu o buclă, sunt patru linii.

Comenzi utile în bucle

  • break — oprește bucla imediat;
  • continue — sare peste pasul curent și trece la următorul.
for i in range(1, 11):
    if i == 5:
        break  # ne oprim când ajungem la 5
    print(i)

Concluzie

Buclele sunt motorul oricărui program serios. Odată ce înțelegi diferența dintre for și while și exersezi cu probleme mici, vei observa că rezolvi sarcini care păreau imposibile cu doar câteva linii de cod.

La ByteSchool înveți buclele exact așa, pas cu pas, alături de mentori care lucrează în Big Tech și care îți arată cum gândesc programatorii adevărați atunci când automatizează o sarcină.