La funzione riceve come argomento una sequenza (stringhe, tuple, liste, iteratori, …) e restituisce un iteratore alle coppie costituite da un indice crescente e un elemento della sequenza
1 2 3 4 5 6 7 8 9 |
>>> z1 = (20, 40, 60) >>> e1 = enumerate(z1) >>> print(list(e1)) [(0, 20), (1, 40), (2, 60)] >>> z2 = "arcobaleno" >>> e2 = enumerate(z2) >>> print(list(e1)) [(0, 'a'), (1, 'r'), (2, 'c'), (3, 'o'), (4, 'b'), (5, 'a'), (6, 'l'), (7, 'e'), (8, 'n'), (9, 'o')] |
Si utilizza nei cicli for
per associare un indice automatico a ognuno dei valori
1 2 3 4 5 6 7 |
z = (20, 40, 60) for i, x in enumerate(z): print(i, ":", x) # 0 : 20 # 1 : 40 # 2 : 60 |
start
L’indice associato da enumerate()
parte normalmente da 0.
Può essere fornito un valore iniziale diverso come secondo argomento della funzione
enumerate(z, 1)
enumerate(z, start=1)
1 2 3 4 5 6 7 |
z = (20, 40, 60) for i, x in enumerate(z, start=1): print(i, ":", x) # 1 : 20 # 2 : 40 # 3 : 60 |