¡Esta es una revisión vieja del documento!
Tabla de Contenidos
Sentencias de control
Bloque perteneciente al curso Introducción a la programación con Python.
Condicionales
if, if-else, if-elif-else
condicion = True if condicion: print("Código condicional")
Si hay alguna operación que deba hacerse en base a si se da o no una determinada circunstancia, lo ponemos en un bloque if
En Python, el sangrado de código (indentation), es un elemento sintáctico. Es obligatorio mantener un sangrado correcto para que el intérprete de Python lo procese adecuadamente y sepa a qué bloque de código pertenecen ciertas instrucciones.
x = 3 if x < 5: print("El valor de x es pequeño")
Responderá:
El valor de x es pequeño
x = 1 cond = False if x < 100 or cond: print("Al menos una de las dos es cierta")
Responderá:
Al menos una de las dos es cierta
x = 1000 cond = True if x < 100 and cond: print("Las dos deben cumplirse")
Responderá:
Las dos deben cumplirse
x = 10 cond = False if (x < 100 or x > 100000) and not cond: print("Las dos deben cumplirse")
Responderá:
Las dos deben cumplirse
Mediante la palabra clave else se puede indicar otro bloque de instrucciones que se llevarán a cabo únicamente en el caso de que la condición del if no se cumpla.
condicion = False if condicion: print("Esto se hará si la condición es cierta") else: print("Si no es cierta, se hará esto otro")
Responderá:
Si no es cierta, se hará esto otro
Ejemplo de resolución de ecuación de segundo grado:
from math import sqrt print("ax^2 + bx + c = 0") # Toma de datos: a = float(input("Coeficiente a:")) b = float(input("Coeficiente b:")) c = float(input("Coeficiente c:")) # Cálculo de las raíces d = b ** 2 - 4 * a * b * c if d >= 0: # Ahora podemos ejecutar las siguientes operaciones sin temor a que # dé error de dominio x1 = (-b + sqrt(b**2 - 4 * a * c)) / (2 * a) x2 = (-b - sqrt(b**2 - 4 * a * c)) / (2 * a) print(f"Soluciones: {x1} y {x2}") else: # Para el caso de la raíz cuadrada negativa, mostramos un aviso print("Su ecuación no tiene soluciones reales")
Para encadenar varias comprobaciones o condiciones de tal modo que si no se cumple una de ellas, pase a comprobar la siguiente, y así varias veces hasta un else final, utilizamos la palabra reservada elif
temperatura = 25 if temperatura < 20: print("Tiempo fresco") elif temperatura > 30: print("Tiempo caluroso") else: print("Temperatura agradable")
Responderá:
Temperatura agradable
Bucles
Cuando necesitamos que ciertas instrucciones se repitan un número (determinado o indeterminado) de veces, tenemos las construcciones for, while…
while
Sintaxis:
while condicion:
instruccion1
instruccion2
...
from math import sin, abs x = 1.0 e = 1000.0 while e > 0.0001: x0 = x x = cos(x) e = abs(x0 - x) print(x, e)
cuenta = 10 while cuenta > 0: print(cuenta) cuenta -= 1 # cuenta = cuenta - 1 print("It's the final countdown!")
Devolverá:
10 9 8 7 6 5 4 3 2 1 It's the final countdown!
