Python - Lección 12: Declaraciones FOR

Python - Lección 12: Declaraciones For.

Espero que llegado a este punto no tengan mayores inconvenientes con el material que les traigo. Recuerden que estoy disponible ante cualquier duda que tengan, pueden comunicarse directamente conmigo o escribir en los comentarios del tema.

En este punto, vamos a ver qué pasa si necesitamos realizar una acción una X cantidad de veces. Para no tener que repetir el código todas esas veces, vamos a utilizar una declaración FOR.
Este tipo de declaraciones y otra más que veremos más adelante, se les llama bucles y sirven para este tipo de casos:

  • Primero vamos a declarar una lista con 10 números y luego vamos a imprimir por pantalla, número por número de dicha lista. Vamos a empezar por la sintaxis:
- Declaración de la lista

- Para (for) cada elemento (num) en la lista (nombre de la lista):
	[Acción a realizar]
  • Traducido a código, sería así:
lista1 = [0,1,2,3,4,5,6,7,8,9]

for num in lista1:
	print(num)

for1

  • También podemos realizar otra acción sin relación con la lista, pero la cantidad de veces como elementos contenga esa misma lista:
lista1 = [1,2,3,4,5]

for num in lista1:
	print("Hola")

for2

NOTA: En este punto, vamos a resaltar que al igual que en las estructuras condicionales IF, el cuerpo de las declaraciones FOR debe estar indexado para que al ejecutar el programa, el propio lenguaje entienda qué es lo que debe realizar dentro de dicho bucle.

  • Combinando FOR con IF, podemos hacer que nuestro código imprima a los elementos que son pares o impares:
lista1 = [0,1,2,3,4,5,6,7,8,9]

for num in lista1:
	par = num % 2

	if (par == 0):
		print (f'El número {num} es par.')
	else:
		print (f'El número {num} es impar.')

for3

  • Ahora vamos a combinar una lista anidada con el bucle FOR (ejemplo sacado del libro llamado "Python para Data Science que mencionaré al final del curso, junto con el resto del material):
datos = [['Jetta Variant', 2003,False], ['Passat', 1991,False], ['CrossFox', 1990, False],['DS5', 2019,True], ['Aston Martin DB4', 2006,False], ['Palio Weekend', 2017,False], ['A5',2019,True], ['Série 3 Cabrio', 2009,False], ['Dodge Journey', 2018,False], ['Carens', 2011,False]]

for item in datos:
	if (item[1] >= 2019):
		print ("Vehículo nuevo.")
	elif(item[1] > 2016 and item[1] <= 2018):
		print ('Vehículo seminuevo.')
	else:
		print ('Vehículo usado.')

for4

NOTA: Se puede ver como utlizamos la posición número 2 de cada lista ([1]) para realizar la comparación y tomar la decisión en cada ciclo de nuestro bucle.

  • Otra cosa interesante que podemos hacer, es desglosar los elementos dentro de cada tupla dentro de la lista para poder utilizarlos de manera separada de una forma más cómoda:
lista = [(1, 2), (3, 4), (5, 6)]

for (a,b) in lista:
	print(a)
	print(b)
	print("\n\n)

for5

  • A veces nos va a convenir ahorrar líneas de código y tiempo, realizando un bucle FOR dentro de un print. Para eso, contamos con la función .join().
lista = [0,1,2]

print ("\n".join([str(item) for item in lista]))

for2

<Tema anterior - Siguiente tema>