Curso de Python - Aula 47 - Iterando Listas - eXcript
Sommario:
enumerate()
è una funzione integrata in Python che ti permette di avere un contatore automatico mentre esegui il ciclo su iterabili.
Python
enumerate()
Function
La funzione
enumerate()
assume la forma seguente:
enumerate(iterable, start=0)
La funzione accetta due argomenti:
-
iterable
- Un oggetto che supporta l'iterazione.start
- Il numero da cui inizia il contatore. Questo argomento è facoltativo. Per impostazione predefinita, il contatore inizia da 0.
enumerate()
restituisce un oggetto enumerato su cui è possibile chiamare il
__next__()
(o
next()
in Python 2) per ottenere una tupla contenente un conteggio e il valore corrente dell'iterabile.
Ecco un esempio di come creare un elenco di tuple usando
list()
e come eseguire il loop su un iterabile:
directions = list(enumerate(directions)) for index, value in enumerate(directions): print("{}: {}".format(index, value))
0: north 1: east 2: south 3: west
Se l'indicizzazione in base zero non funziona per te, scegli un altro indice iniziale per l'enumerazione:
directions = list(enumerate(directions, 1))
La funzione
enumerate()
funziona su qualsiasi oggetto iterabile. Un iterabile è un contenitore che può essere ripetuto. Detto in parole semplici, significa un oggetto su cui è possibile eseguire il loop con un ciclo
for
. La maggior parte degli oggetti incorporati in Python come stringhe, elenchi e tuple sono iterabili.
Scrivi altro codice Pythonic con
enumerate()
Python's
for
loop è totalmente diverso dal tradizionale stile C
for
loop, disponibile in molti linguaggi di programmazione. Il ciclo
for
in Python è equivalente al ciclo
foreach
di altre lingue.
Una tecnica comune utilizzata dai nuovi sviluppatori Python per ottenere l'indice corrispondente quando si tratta di iterabili è quella di utilizzare il modello
range(len(…))
o impostare e incrementare un contatore:
planets = for i in range(len(planets)): print("Planet {}: {}".format(i, planets))
planets = i = 0 for planet in planets: print("Planet {}: {}".format(i, planet)) i += 1
I loop sopra possono essere riscritti in modo più idiomatico usando
enumerate()
:
planets = for index, value in enumerate(planets): print("Planet {}: {}".format(index, value))
Tutti i metodi produrranno lo stesso output:
Planet 0: Mercury Planet 1: Venus Planet 2: Earth Planet 3: Mars Planet 4: Jupiter Planet 5: Saturn Planet 6: Uranus Planet 7: Neptune
Conclusione
, ti abbiamo mostrato come usare la funzione
enumerate()
di Python.
Impossibile enumerare gli oggetti nel contenitore
Se non si riesce a modificare le autorizzazioni degli oggetti e ricevuti Impossibile enumerare gli oggetti nel contenitore , Errore Accesso negato in Windows 10 / 8.1, vedere questa correzione.
Come convertire stringhe in numeri interi in Python
Spesso quando si scrive il codice Python, è necessario convertire un tipo di dati in un altro. In Python puoi convertire una stringa in numero intero usando la funzione build (in int).
Come controllare la versione di Python
Python è uno dei linguaggi di programmazione più popolari al mondo. Questo tutorial spiega come verificare quale versione di Python è installata sul tuo sistema operativo.