Treci la conținutul principal

range() este o funcție încorporată care îți dă o secvență imutabilă de numere, iar cea mai obișnuită utilizare a ei este să facă o buclă să ruleze de un anumit număr de ori.

Secvența aparține unui tip de date propriu, numit range.

Notă: Ceva imutabil rămâne exact așa cum a fost creat; nu poate fi modificat ulterior.


Crearea intervalelor

Îi poți transmite lui range() 1, 2 sau 3 argumente. Sintaxa completă arată așa:

main.py
range(start, stop, step)

Apelarea range() cu un singur argument

Un singur argument este tratat ca valoarea stop.

Dacă omiți start, care este opțional, numărarea începe implicit de la 0.

Așadar, range(10) produce numerele de la 0 la 9: valoarea de start 0 este inclusă, iar valoarea de stop 10 nu.

main.py
x = range(10)

Apelarea range() cu două argumente

Cu două argumente, primul este valoarea start, iar al doilea este valoarea stop.

Așadar, range(3, 10) produce numerele de la 3 la 9:

main.py
x = range(3, 10)

Apelarea range() cu trei argumente

Al treilea argument stabilește valoarea step.

Pasul este distanța dintre un număr și următorul. Îl poți omite, iar atunci are implicit valoarea 1.

Așadar, range(3, 10, 2) numără de la 3 până la 9, cu pasul 2:

main.py
x = range(3, 10, 2)

Utilizarea intervalelor

Un loc foarte obișnuit în care găsești un interval este o buclă for, care îi parcurge numerele unul câte unul.

Exemplu

Afișează fiecare număr dintr-un interval:

Prompt
Scrie un program Python care folosește o buclă for cu range(10) pentru a afișa fiecare număr de la 0 la 9.
Ieșire: program Python complet

Utilizarea listelor pentru afișarea intervalelor

Un obiect range este o secvență imutabilă de numere de sine stătătoare, iar afișarea lui nu îi enumeră numerele.

Ca să le vezi, de obicei transformi mai întâi intervalul într-o listă.

Exemplu

Transformă câteva intervale diferite în liste:

Prompt
Scrie un program Python care convertește trei intervale diferite în liste și le afișează: range(5), range(1, 6) și range(5, 20, 3).
Ieșire: program Python complet

Felierea intervalelor

La fel ca în cazul altor secvențe, poți felia un interval ca să extragi o parte din el.

Notă: În acest exemplu, primul print afișează valoarea de la indexul 2, iar al doilea afișează un nou obiect range care acoperă indexurile de la 0 la 3.

Exemplu

Extrage o bucată dintr-un interval:

Prompt
Scrie un program Python care creează un range(10), afișează elementul de la indexul 2 și afișează o feliere de la indexul 0 la 3.
Ieșire: program Python complet

Testarea apartenenței

Operatorul in îți permite să testezi dacă un interval conține un număr.

Obții True dacă numărul se află în interval și False dacă nu se află.

Exemplu

Află dacă 6 și 7 aparțin unui interval:

Prompt
Scrie un program Python care creează range(0, 10, 2) și testează apartenența numerelor 6 și 7 folosind operatorul in. Afișează rezultatele.
Ieșire: program Python complet

Lungimea

Transmite un interval funcției len() și ea îți spune câte elemente are intervalul.

Exemplu

Numără elementele unui interval:

Prompt
Scrie un program Python care creează range(0, 10, 2) și afișează lungimea acestuia folosind len().
Ieșire: program Python complet