Ripetizioni con for

Il ciclo for di Python si utilizza per 3 scopi

  1. con conteggio, tramite range()
  2. elaborando i numeri naturali di un intervallo, generato con range()
  3. con iteratore, su una struttura dati esistente

Con conteggio

Ripete l’esecuzione di un blocco di istruzioni, un certo numero di volte

for i in range(n):
    istr_1
    istr_2
    ...

Osserva

  • La variabile i assume i valori generati da range(n): 0, 1, 2, …, n-1
  • Il blocco sottostante viene eseguito n (…) volte

Con intervallo

Elabora i numeri naturali generati tramite la funzione range(…)

for numero in range(START, STOP, STEP):
    istr_1
    istr_2
    ...

Osserva

  • Sfrutta tutte le potenzialità della funzione range(…) per generare una certa sequenza di numeri naturali
    • a partire da …
    • fino a … escluso
    • con passo …
  • la variabile numero assume uno dopo l’altro i valori della sequenza
  • i valori vengono elaborati nel blocco sottostante

Con iteratore

Scorre gli elementi di una struttura dati (si dice che utilizza un iteratore)

STRUTTURA_DATI = ___

for x in STRUTTURA_DATI:
    istr_1
    istr_2
    ...

Estrae un elemento dalla STRUTTURA_DATI e lo assegna alla variabile x.
Esegue il blocco di codice sottostante.
Ripete per ognuno degli elementi della STRUTTURA_DATI.

La struttura dati è un oggetto a scelta tra quelli iterabili di Python

Struttura datix
dict()Dizionario{0:10, 2:20, 3:30, 7:40}0 2 3 7
list()Lista[0, 2, 3, 7]0 2 3 7
range()Intervallorange(5)0 1 2 3 4
set()Insieme{0, 2, 3, 7}0 2 3 7
str()Stringa"0237""0" "2" "3" "7"
tuple()Tupla(0, 2, 3, 7)0 2 3 7

La struttura dati può contenere stringhe, numeri, colori, date, orari, …, oggetti di qualsiasi tipo.