Python si... si no
Condiciones de Python y sentencias If
Python admite las condiciones lógicas habituales de las matemáticas:
- Es igual a : a == b
- No es igual a: a != b
- Menos que: a < b
- Menor o igual que: a <= b
- Mayor que: a > b
- Mayor o igual que: a >= b
Estas condiciones se pueden usar de varias maneras, más comúnmente en "sentencias if" y bucles.
Una "sentencia if" se escribe utilizando la palabra clave if .
Ejemplo
Si declaración:
a = 33
b = 200
if b > a:
print("b is greater than a")
En este ejemplo, usamos dos variables, a y b , que se usan como parte de la declaración if para probar si b es mayor que a . Como a es 33 y b es 200 , sabemos que 200 es mayor que 33, por lo que imprimimos en pantalla que "b es mayor que a".
Sangría
Python se basa en la sangría (espacio en blanco al comienzo de una línea) para definir el alcance en el código. Otros lenguajes de programación a menudo usan corchetes para este propósito.
Ejemplo
Si declaración, sin sangría (generará un error):
a = 33
b = 200
if b > a:
print("b is greater than a")
# you will get an error
elif
La palabra clave elif es la forma de Python de decir "si las condiciones anteriores no eran ciertas, entonces pruebe esta condición".
Ejemplo
a = 33
b = 33
if b > a:
print("b is greater than a")
elif a == b:
print("a and b are equal")
En este ejemplo , a es igual a b , por lo que la primera condición no es verdadera, pero la condición elif es verdadera, por lo que imprimimos en la pantalla que "a y b son iguales".
Demás
La palabra clave else captura cualquier cosa que no esté capturada por las condiciones anteriores.
Ejemplo
a = 200
b = 33
if b > a:
print("b is greater than a")
elif a == b:
print("a and b are equal")
else:
print("a is greater than b")
En este ejemplo , a es mayor que b , por lo que la primera condición no es verdadera, tampoco la condición elif es verdadera, así que vamos a la condición else e imprimimos en la pantalla que "a es mayor que b".
También puede tener un else
sin el
elif
:
Ejemplo
a = 200
b = 33
if b > a:
print("b is greater than a")
else:
print("b is not greater than a")
Mano Corta Si
Si solo tiene una declaración para ejecutar, puede colocarla en la misma línea que la declaración if.
Ejemplo
Una línea si declaración:
if a > b: print("a is greater than b")
Mano corta si... si no
Si solo tiene una declaración para ejecutar, una para if y otra para else, puede ponerlas todas en la misma línea:
Ejemplo
Una línea si otra declaración:
a = 2
b = 330
print("A") if a > b else print("B")
Esta técnica se conoce como Operadores Ternarios o Expresiones Condicionales .
También puede tener varias declaraciones else en la misma línea:
Ejemplo
Declaración if else de una línea, con 3 condiciones:
a = 330
b = 330
print("A") if a > b else print("=") if a == b else print("B")
Y
La palabra clave and es un operador lógico y se usa para combinar sentencias condicionales:
Ejemplo
Prueba si a
es mayor que
b
, Y si c
es mayor que a
:
a = 200
b = 33
c = 500
if a > b and c > a:
print("Both conditions are True")
O
La or
palabra clave es un operador lógico y se usa para combinar declaraciones condicionales:
Ejemplo
Prueba si a
es mayor que
b
, O si a
es mayor que c
:
a = 200
b = 33
c = 500
if a > b or a > c:
print("At least one of the conditions is True")
Si anidado
Puede tener if
declaraciones dentro
if
de declaraciones, esto se llama declaraciones anidadas
if
.
Ejemplo
x = 41
if x > 10:
print("Above ten,")
if x > 20:
print("and
also above 20!")
else:
print("but not
above 20.")
La declaración de pase
if
Las declaraciones no pueden estar vacías, pero si por alguna razón tiene una if
declaración sin contenido, pass
introdúzcala para evitar errores.
Ejemplo
a = 33
b = 200
if b > a:
pass