Navegar por una colección es una tarea tan común que muchos lenguajes de programación la resuelven introduciendo un tipo especial de bucle. En Python, puedes utilizar el bucle for ... in para recorrer una lista.
user_names = ['Carlos', 'Juan', 'Luis']
# En cada iteración del bucle, la variable 'name' toma el valor del siguiente elemento
# en la lista 'user_names'
for name in user_names:
print(name)
# => "Carlos"
# => "Juan"
# => "Luis"
El bucle sabe cómo recorrer los elementos y sabe cuándo ha llegado al final. En el bucle, se crea la variable name. En cada iteración, toma el siguiente valor del elemento de la lista user_names.
Este bucle es perfecto para tareas de agregación:
def calculate_sum(coll):
sum = 0
for value in coll:
sum += value
return sum
print(calculate_sum([3, 2, -10, 38, 0])) # => 33
for ... in es más que solo un bucle para listas. Para entender completamente sus principios de funcionamiento, necesitas entender temas que aún no hemos cubierto, incluyendo objetos, empaquetado/desempaquetado y generadores. Dicho de manera sencilla, diferentes datos en Python pueden hacerse pasar por colecciones de elementos. El ejemplo más sencillo es una cadena: for...in recorre una cadena carácter por carácter.
greeting = 'Hola'
for symbol in greeting:
print(symbol)
# => "H"
# => "o"
# => "l"
# => "a"
Sin embargo, no debes confundir una cadena con una lista. A pesar de la similitud aparente en el acceso a los elementos de una cadena por índice, una cadena no es una lista.
Si miras hacia el futuro y cómo se escribe el código real en Python, verás que aparecen funciones de alto orden. Es decir, en la práctica, los bucles, son innecesarios con pocas excepciones. Sin embargo, no puedes saltarte el trabajo con los bucles, ya que son la base. Las funciones de alto orden requieren la comprensión de temas que no se pueden aprender de una sola vez.
Para acceder completo a curso necesitas un plan básico
El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.