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('The initial value of v is', v, 'and that of t is ',t) # Creating a selection control structure if v > t : print(v, 'is bigger than ', t) v -= 2 print('The new value of v is', v, 'and the t is ',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('The value of v is ', v, 'and that of t is ', t) # Checking the condition if v > t : print('v is greater than t') # Giving the instructions to perform if the if condition is not true else : print('v is less than t') </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 = ', ') print(' ') for j in range(0,10): print(j, end = ', ') </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('The value of v is ', v, 'and that of t is ', t) # Checking the condition if v > t : print('v is greater than t') # Giving the instructions to perform if the if condition is not true else : print('v is less than t')
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 = ', ') print(' ') for j in range(0,10): print(j, end = ', ')
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>