Python enumerate() si utilizza per restituire un input sotto forma di oggetto enumerato. Tra le varie possibilità, questa funzione integrata consente anche di numerare stringhe ed elenchi.

Che cos’è Python enumerate()?

La funzione Python enumerate() è utilizzata per creare un’enumerazione partendo da un input. Gli oggetti possono essere, ad esempio, stringhe o tuple di Python e ciascuno di essi viene dotato di un contatore. L’enumerazione è progressiva e parte da “0” per impostazione predefinita. La funzione è disponibile di base nel linguaggio di programmazione.

Managed Nextcloud di IONOS Cloud
Lavora con il tuo team sul cloud
  • Massima sicurezza dei tuoi dati
  • Strumenti di collaborazione per lavorare in team
  • Aggiornamenti automatici

Sintassi e parametri di Python enumerate()

La sintassi di Python enumerate() si presenta così:

enumerate(iterable, start)
python

Essa accetta due parametri:

  • “iterable”: “iterable” indica un oggetto o una sequenza che possono essere riportati ciclicamente. Successivamente, la funzione aggiunge un numero progressivo prima di questo parametro, che è obbligatorio.
  • “start”: questo parametro è facoltativo. Esso permette di stabilire il valore numerico a partire dal quale iniziare la numerazione. Il suo valore standard è “0”.

Esempio di numerazione con enumerate()

Per chiarire meglio il funzionamento, utilizziamo un semplice esempio con quattro colori diversi. Procediamo quindi a numerarli per mezzo di Python enumerate(). Il codice per farlo si presenta così:

colori = ['Blu', 'Rosso', 'Giallo', 'Arancione']
sequenza = enumerate(colori)
print(list(sequenza))
python

In questo modo otteniamo questo risultato:

[(0, 'Blu'), (1, 'Rosso'), (2, 'Giallo'), (3, 'Arancione')]
python

Python enumerate() con un indice iniziale

Poiché non abbiamo specificato un indice iniziale, l’enumerazione parte da “0”. Per cambiare questa impostazione, aggiungiamo a Python enumerate() il parametro “start” con il valore “1”. A tal fine è sufficiente modificare leggermente il codice precedente:

colori = ['Blu', 'Rosso', 'Giallo', 'Arancione']
sequenza = enumerate(colori, 1)
print(list(sequenza))
python

Il risultato che otteniamo appare subito un po’ più chiaro:

[(1, 'Blu'), (2, 'Rosso'), (3, 'Giallo'), (4, 'Arancione')]
python

Inoltre, puoi cambiare l’indice iniziale come preferisci in modo da far partire la numerazione da qualsiasi altro valore.

La funzione enumerate() con un ciclo for

È possibile utilizzare Python enumerate() con e senza indice iniziale in combinazione con un ciclo for. Per il primo ciclo facciamo a meno del parametro “start”. Il conteggio parte quindi da “0”. Per il secondo ciclo aggiungiamo il parametro per il punto di partenza “5”. In questo caso, il conteggio parte quindi da questo valore. Con l’identificatore "\n" chiediamo quindi al sistema di creare una nuova riga per ciascun elemento per rendere più chiara la visualizzazione. Il codice per questa combinazione è il seguente:

colori = ['Blu', 'Rosso', 'Giallo', 'Arancione']
for sequenza in enumerate(colori):
    print(sequenza)
    print("\n")
print("Continua a partire da 5")        
for sequenza in enumerate(colori, 5):
    print(sequenza)
    print("\n")
python

Il risultato è quindi il seguente:

(0, 'Blu')
(1, 'Rosso')
(2, 'Giallo')
(3, 'Arancione')
Continua a partire da 5
(5, 'Blu')
(6, 'Rosso')
(7, 'Giallo')
(8, 'Arancione')
python

String Python enumerate()

Python enumerate() è la funzione giusta anche per enumerare una stringa. A tal fine la stringa viene scomposta nelle sue singole parti e numerata progressivamente. Il codice da utilizzare si presenta così:

string = "esempio"
for x in enumerate(string, 1):
    print(x)
python

Il risultato è il seguente:

(1, 'e')
(2, 's')
(3, 'e')
(4, 'm')
(5, 'p')
(6, 'i')
(7, 'o')
python
Consiglio

La soluzione migliore per siti web e app: Deploy Now di IONOS ti permette di distribuire i tuoi progetti web direttamente tramite GitHub. Approfitta dei vantaggiosi piani tariffari e trova la configurazione più adatta alle tue esigenze. Richiedi una consulenza con i nostri esperti!

Hai trovato questo articolo utile?
Vai al menu principale