logo

Estructuras de control en Python

La mayoría de los programas no funcionan mediante la ejecución de una secuencia sencilla de declaraciones. Se escribe un código para permitir tomar decisiones y seguir varios caminos a través del programa dependiendo de los cambios en los valores de las variables.

Todos los lenguajes de programación contienen un conjunto preincluido de estructuras de control que permiten la ejecución de estos flujos de control, lo que lo hace concebible.

Este tutorial examinará cómo agregar bucles y ramas, es decir, condiciones a nuestros programas Python.

Tipos de estructuras de control

El flujo de control se refiere a la secuencia que seguirá un programa durante su ejecución.

Las condiciones, los bucles y las funciones de llamada influyen significativamente en cómo se controla un programa Python.

Hay tres tipos de estructuras de control en Python:

  • Secuencial: el funcionamiento predeterminado de un programa.
  • Selección: esta estructura se utiliza para tomar decisiones comprobando condiciones y ramificando.
  • Repetición: esta estructura se utiliza para realizar bucles, es decir, ejecutar repetidamente una determinada parte de un bloque de código.

Secuencial

Las declaraciones secuenciales son un conjunto de declaraciones cuyo proceso de ejecución ocurre en una secuencia. El problema con las declaraciones secuenciales es que si la lógica se ha roto en cualquiera de las líneas, entonces se romperá la ejecución completa del código fuente.

Código

eliminación de un árbol de búsqueda binario
 # Python program to show how a sequential control structure works # We will initialize some variables # Then operations will be done # And, at last, results will be printed # Execution flow will be the same as the code is written, and there is no hidden flow a = 20 b = 10 c = a - b d = a + b e = a * b print('The result of the subtraction is: ', c) print('The result of the addition is: ', d) print('The result of the multiplication is: ', e) 

Producción:

 The result of the subtraction is: 10 The result of the addition is : 30 The result of the multiplication is: 200 

Declaraciones de control de selección/decisión

Las declaraciones utilizadas en las estructuras de control de selección también se denominan declaraciones de ramificación o, como su función fundamental es tomar decisiones, declaraciones de control de decisiones.

Un programa puede probar muchas condiciones utilizando estas declaraciones de selección y, dependiendo de si la condición dada es verdadera o no, puede ejecutar diferentes bloques de código.

Puede haber muchas formas de estructuras de control de decisiones. Estas son algunas de las estructuras de control más utilizadas:

  • Sólo si
  • si no
  • El si anidado
  • El if-elif-else completo

sencillo si

Las declaraciones If en Python se denominan declaraciones de flujo de control. Las declaraciones de selección nos ayudan a ejecutar un determinado fragmento de código, pero sólo en determinadas circunstancias. Sólo hay una condición para probar en una declaración if básica.

La estructura fundamental de la declaración if es la siguiente:

Sintaxis

 if : The code block to be executed if the condition is True 

Estas declaraciones siempre se ejecutarán. Son parte del código principal.

Todas las declaraciones escritas con sangría después de la declaración if se ejecutarán si la condición dada después de la palabra clave if es Verdadera. Solo la declaración de código que siempre se ejecutará independientemente de si la condición es la declaración escrita alineada con el código principal. Python utiliza este tipo de sangrías para identificar un bloque de código de una declaración de flujo de control particular. La estructura de control especificada alterará el flujo de sólo aquellas declaraciones sangradas.

A continuación se muestran algunos casos:

java agregando a una matriz

Código

 # Python program to show how a simple if keyword works # Initializing some variables v = 5 t = 4 print(&apos;The initial value of v is&apos;, v, &apos;and that of t is &apos;,t) # Creating a selection control structure if v &gt; t : print(v, &apos;is bigger than &apos;, t) v -= 2 print(&apos;The new value of v is&apos;, v, &apos;and the t is &apos;,t) # Creating the second control structure if v <t : print(v , 'is smaller than ', t) v +="1" print('the new value of is v) # creating the third control structure if t: v, ' and t,', t, are equal') < pre> <p> <strong>Output:</strong> </p> <pre> The initial value of v is 5 and that of t is 4 5 is bigger than 4 The new value of v is 3 and the t is 4 3 is smaller than 4 the new value of v is 4 The value of v, 4 and t, 4, are equal </pre> <h3>if-else</h3> <p>If the condition given in if is False, the if-else block will perform the code t=given in the else block.</p> <p> <strong>Code</strong> </p> <pre> # Python program to show how to use the if-else control structure # Initializing two variables v = 4 t = 5 print(&apos;The value of v is &apos;, v, &apos;and that of t is &apos;, t) # Checking the condition if v &gt; t : print(&apos;v is greater than t&apos;) # Giving the instructions to perform if the if condition is not true else : print(&apos;v is less than t&apos;) </pre> <p> <strong>Output:</strong> </p> <pre> The value of v is 4 and that of t is 5 v is less than t </pre> <h2>Repetition</h2> <p>To repeat a certain set of statements, we use the repetition structure.</p> <p>There are generally two loop statements to implement the repetition structure:</p> <ul> <li>The for loop</li> <li>The while loop</li> </ul> <h3>For Loop</h3> <p>We use a for loop to iterate over an iterable Python sequence. Examples of these data structures are lists, strings, tuples, dictionaries, etc. Under the for loop code block, we write the commands we want to execute repeatedly for each sequence item.</p> <p> <strong>Code</strong> </p> <pre> # Python program to show how to execute a for loop # Creating a sequence. In this case, a list l = [2, 4, 7, 1, 6, 4] # Executing the for loops for i in range(len(l)): print(l[i], end = &apos;, &apos;) print(&apos;
&apos;) for j in range(0,10): print(j, end = &apos;, &apos;) </pre> <p> <strong>Output:</strong> </p> <pre> 2, 4, 7, 1, 6, 4, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, </pre> <h3>While Loop</h3> <p>While loops are also used to execute a certain code block repeatedly, the difference is that loops continue to work until a given precondition is satisfied. The expression is checked before each execution. Once the condition results in Boolean False, the loop stops the iteration.</p> <p> <strong>Code</strong> </p> <pre> # Python program to show how to execute a while loop b = 9 a = 2 # Starting the while loop # The condition a <b 1 will be checked before each iteration while a < b: print(a, end=" " ) + print('while loop is completed') pre> <p> <strong>Output:</strong> </p> <pre> 2 3 4 5 6 7 8 While loop is completed </pre> <hr></b></pre></t>

si no

Si la condición dada en if es falsa, el bloque if-else ejecutará el código t=dado en el bloque else.

Código

 # Python program to show how to use the if-else control structure # Initializing two variables v = 4 t = 5 print(&apos;The value of v is &apos;, v, &apos;and that of t is &apos;, t) # Checking the condition if v &gt; t : print(&apos;v is greater than t&apos;) # Giving the instructions to perform if the if condition is not true else : print(&apos;v is less than t&apos;) 

Producción:

 The value of v is 4 and that of t is 5 v is less than t 

Repetición

Para repetir un determinado conjunto de declaraciones, utilizamos la estructura de repetición.

Generalmente hay dos declaraciones de bucle para implementar la estructura de repetición:

  • El bucle for
  • El bucle while

En bucle

Usamos un bucle for para iterar sobre una secuencia iterable de Python. Ejemplos de estas estructuras de datos son listas, cadenas, tuplas, diccionarios, etc. Bajo el bloque de código de bucle for, escribimos los comandos que queremos ejecutar repetidamente para cada elemento de la secuencia.

Código

 # Python program to show how to execute a for loop # Creating a sequence. In this case, a list l = [2, 4, 7, 1, 6, 4] # Executing the for loops for i in range(len(l)): print(l[i], end = &apos;, &apos;) print(&apos;
&apos;) for j in range(0,10): print(j, end = &apos;, &apos;) 

Producción:

 2, 4, 7, 1, 6, 4, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 

Mientras bucle

Si bien los bucles también se utilizan para ejecutar un determinado bloque de código repetidamente, la diferencia es que los bucles continúan funcionando hasta que se cumple una condición previa determinada. La expresión se verifica antes de cada ejecución. Una vez que la condición resulta en booleano falso, el bucle detiene la iteración.

Código

 # Python program to show how to execute a while loop b = 9 a = 2 # Starting the while loop # The condition a <b 1 will be checked before each iteration while a < b: print(a, end=" " ) + print(\'while loop is completed\') pre> <p> <strong>Output:</strong> </p> <pre> 2 3 4 5 6 7 8 While loop is completed </pre> <hr></b>