Pregunta

Estoy familiarizado con el uso de enumerate():

>>> seq_flat = ('A', 'B', 'C')
>>> for num, entry in enumerate(seq_flat):
        print num, entry
0 A
1 B
2 C

Quiero poder hacer lo mismo para una lista anidada:

>>> seq_nested = (('A', 'Apple'), ('B', 'Boat'), ('C', 'Cat'))

Puedo desempacarlo con:

>>> for letter, word in seq_nested:
        print letter, word
A Apple
B Boat
C Cat

¿Cómo debo desempacarlo para obtener lo siguiente?

0 A Apple
1 B Boat
2 C Cat

La única forma en que sé es usar un contador / incremental, que es un poco pythonic hasta donde conozco.¿Hay una forma más elegante de hacerlo?

¿Fue útil?

Solución

for i, (letter, word) in enumerate(seq_nested):
  print i, letter, word
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top