logo

Técnicas de bucle en Python

Python admite varias técnicas de bucle mediante ciertas funciones incorporadas en varios contenedores secuenciales. Estos métodos son principalmente muy útiles en programación competitiva y también en diversos proyectos que requieren una técnica específica con bucles que mantienen la estructura general del código.  Se ahorra mucho tiempo y espacio de memoria ya que no es necesario declarar las variables adicionales que declaramos en el enfoque tradicional de los bucles.

¿Dónde se utilizan?

Las diferentes técnicas de bucle son útiles principalmente en lugares donde no necesitamos manipular realmente la estructura y el orden de los contenedores generales, sino que solo imprimimos los elementos para una instancia de un solo uso, sin que se produzcan cambios in situ en el contenedor. Esto también se puede utilizar en casos para ahorrar tiempo.

Las diferentes técnicas de bucle que utilizan estructuras de datos de Python son:  

Forma 1: usar enumerar():   enumerate() se utiliza para recorrer los contenedores que imprimen el número de índice junto con el valor presente en ese índice en particular.



Python3
# python code to demonstrate working of enumerate() for key value in enumerate(['The' 'Big' 'Bang' 'Theory']): print(key value) 

Producción:

herencia en c++
0 The  
1 Big
2 Bang
3 Theory
Python3
# python code to demonstrate working of enumerate() for key value in enumerate(['Geeks' 'for' 'Geeks' 'is' 'the' 'Best' 'Coding' 'Platform']): print(value end=' ') 

Producción:

Geeks for Geeks is the Best Coding Platform 

Forma 2: usando zip():  zip() se utiliza para combinar 2 o más contenedores imprimiendo los valores secuencialmente. El bucle existe sólo hasta que termina el contenedor más pequeño. Puede encontrar una explicación detallada de zip() y enumerate() aquí .

Ejemplo 1: dos tipos de datos diferentes (lista tupla)

Python
# python code to demonstrate working of zip() names = ['Deep' 'Sachin' 'Simran'] # list ages = (24 27 25) # tuple for name age in zip(names ages): print('Name: ' name) print('Age: ' age) print() 

Producción
('Name: ' 'Deep') ('Age: ' 24) () ('Name: ' 'Sachin') ('Age: ' 27) () ('Name: ' 'Simran') ('Age: ' 25) () 

Ejemplo 2: Lista-lista de dos tipos de datos similares

Python3
# python code to demonstrate working of zip() # initializing list questions = ['name' 'colour' 'shape'] answers = ['apple' 'red' 'a circle'] # using zip() to combine two containers # and print values for question answer in zip(questions answers): print('What is your {0}? I am {1}.'.format(question answer)) 

Producción:

What is your name? I am apple.  
What is your color? I am red.
What is your shape? I am a circle.

Forma 3: usando iteritem():  iteritems() se utiliza para recorrer el diccionario imprimiendo el par clave-valor del diccionario de forma secuencial, que se utiliza antes de la versión Python 3.

cómo centrar una imagen en css

Forma 4: usar elementos(): items() realiza una tarea similar en el diccionario que iteritems() pero tiene ciertas desventajas en comparación con iteritems().

  • Es requiere mucho tiempo . Llamarlo en diccionarios grandes consume bastante tiempo.
  • se necesita un mucha memoria . A veces se necesita el doble de memoria cuando se llama a un diccionario.

Ejemplo 1:

Python3
# python code to demonstrate working of items() d = {'geeks': 'for' 'only': 'geeks'} # iteritems() is renamed to items() in python3 # using items to print the dictionary key-value pair print('The key value pair using items is : ') for i j in d.items(): print(i j) 

Producción:

The key value pair using iteritems is :   
geeks for
only geeks

Ejemplo 2:

Python3
# python code to demonstrate working of items() king = {'Ashoka': 'The Great' 'Chandragupta': 'The Maurya' 'Modi': 'The Changer'} # using items to print the dictionary key-value pair for key value in king.items(): print(key value) 

Producción
Ashoka The Great Chandragupta The Maurya Modi The Changer 

Forma 5: Usando ordenado():   ordenado() se utiliza para imprimir el El contenedor está ordenado. . Él no ordena el contenedor pero solo imprime el contenedor en orden para 1 instancia. el uso de set() se puede combinar para eliminar duplicados ocurrencias.

Ejemplo 1:

Python3
# python code to demonstrate working of sorted() # initializing list lis = [1 3 5 6 2 1 3] # using sorted() to print the list in sorted order print('The list in sorted order is : ') for i in sorted(lis): print(i end=' ') print('r') # using sorted() and set() to print the list in sorted order # use of set() removes duplicates. print('The list in sorted order (without duplicates) is : ') for i in sorted(set(lis)): print(i end=' ') 

Producción:

    The li   st in sorted order is :   
1 1 2 3 3 5 6
The list in sorted order (without duplicates) is :
1 2 3 5 6

Ejemplo 2:

Python3
# python code to demonstrate working of sorted() # initializing list basket = ['guave' 'orange' 'apple' 'pear' 'guava' 'banana' 'grape'] # using sorted() and set() to print the list # in sorted order for fruit in sorted(set(basket)): print(fruit) 

Producción:

apple  
banana
grape
guava
guave
orange
pear

Forma 6: Usando invertido():  Reversed() se utiliza para imprimir los valores de el contenedor en orden inverso . No refleja ningún cambio en la lista original.

Ejemplo 1:

constructores en java
Python3
# python code to demonstrate working of reversed() # initializing list lis = [1 3 5 6 2 1 3] # using reversed() to print the list in reversed order print('The list in reversed order is : ') for i in reversed(lis): print(i end=' ') 

Producción:

¿Qué es el oráculo?
The list in reversed order is :   
3 1 2 6 5 3 1

Ejemplo 2:

Python3
# python code to demonstrate working of reversed() # using reversed() to print in reverse order for i in reversed(range(1 10 3)): print(i) 

Producción:

7  
4
1
  • Estas técnicas son rápidas de usar y reducen el esfuerzo de codificación. Los bucles for while necesitan cambiar toda la estructura del contenedor.
  • Estas técnicas de Looping no requieren ningún cambio estructural en el contenedor. Tienen palabras clave que presentan el propósito exacto de su uso. Mientras que no se pueden hacer predicciones previas ni conjeturas en el bucle while, es decir, no se comprende fácilmente el propósito de un vistazo.
  • La técnica de bucle hace que el código sea más conciso que utilizar el bucle for & while.

técnicas de bucle while usando sentencias if:

En este ejemplo usamos un bucle while para incrementar una variable llamada recuento. Dentro del bucle usamos una declaración if para verificar si el recuento es igual a 3. Si es así, imprimimos un mensaje.

Acercarse:

Inicializar una variable de recuento a 0
Utilice un bucle while para ejecutar repetidamente un bloque de código siempre que el recuento sea inferior a 5
Dentro del bucle use una declaración if para verificar si el recuento es igual a 3
Si el recuento es 3, imprima un mensaje.
Incrementar el recuento en 1 al final de cada iteración.

Python3
# Example variable count = 0 # Loop while count is less than 5 while count < 5: if count == 3: print('Count is 3') count += 1 

Producción
Count is 3


Complejidad del tiempo: O(n) donde n es el número de iteraciones necesarias para que el recuento llegue a 5.

Espacio auxiliar: O(1) ya que solo se utiliza una variable (recuento) en todo el código.

Crear cuestionario