Condicional if
La sentencia condicional if
se usa para tomar decisiones, este evaluá básicamente una operación lógica, es decir una expresión que de como resultado True
o False
, y ejecuta la pieza de código siguiente siempre y cuando el resultado sea verdadero.
A continuación un de estructura condicional if
/elif
/else
completo:
numero = int(input("\nIngresa un número entero, por favor: "))
if numero < 0:
numero = 0
print ('El número ingresado es negativo cambiado a cero.\n')
elif numero == 0:
print ('El número ingresado es 0.\n')
elif numero == 1:
print ('El número ingresado es 1.\n')
else:
print ('El número ingresado es mayor que uno.\n')
En el ejemplo anterior usa dos funciones integradas en el interprete Python:
- La función int() que convierte el valor ingresado a número entero.
- La función raw_input() lee el valor ingresado por la entrada estándar.
El valor es ingresado en la variable numero
comprobará en el sentencia condicional if
, si la comprobación devuelve False
intentará con el siguiente bloque condicional elif
, si la comprobación devuelve False
nuevamente intentará con el siguiente bloque condicional elif
si de nuevo la comprobación devuelve False
por ultimo intentará con el siguiente bloque condicional else
la cual se ejecutara sin comprobación.
Sentencia if
La sentencia if EXPRESION
, significa, Si se cumple la expresión condicional se ejecuta el bloque de sentencias seguidas.
Sentencia elif
La sentencia elif EXPRESION
, significa, De lo contrario Si se cumple la expresión condicional se ejecuta el bloque de sentencias seguidas.
Sentencia else
La sentencia else
, significa, De lo contrario se cumple sin evaluar ninguna expresión condicional y ejecuta el bloque de sentencias seguidas.
Operador is
El operador is
, significa, que prueba identidad: ambos lados de la expresión condicional debe ser el mismo objecto:
>>> 1 is 1.
False
>>> a, b = 1, 1
>>> a is b
True
Operador in
El operador in
, significa, para cualquier colección del valor del lado izquierdo contenga el valor del lado derecho:
>>> b = [1, 2, 3]
>>> 2 in b
True
>>> 5 in b
False
En el ejemplo anterior, si b
es una lista, este prueba que 2
y 5
sean elementos de la lista b
.
Operador not in
El operador not in
, el contrario de operador in, devuelve True
cuando un elemento no está en una secuencia.
>>> b = [1, 2, 3]
>>> 4 not in b
True
>>> 1 not in b
False
En el ejemplo anterior, si b
es una lista, este prueba que 4
y 1
sean elementos de la lista b
.
Expresiones condicional
Estos son los distintos tipos de expresiones condicionales:
Expresión if
La expresión de la sentencia if
se evaluá a False
cuando se cumple las siguientes expresiones están presente:
- Cualquier numero igual a cero (0, 0.0, 0+0j).
- Un contenedor vació (lista, tupla, conjunto, diccionario).
False
,None
.
De lo contrario evaluá a True
cuando se cumple la siguiente expresión esta presente:
- cualquier cosa de lo contrario.
if EXPRESION:
pass
Expresión ==
Esta expresión usa el operador == para validar la misma.
Expresión is
Esta expresión usa el operador is para validar la misma.
Expresión in
Esta expresión usa el operador in para validar la misma.
Ejemplos
A continuación, se presenta un ejemplo del uso de condicionales if
:
Definir variables usadas en los siguientes ejemplos:
dato1, dato2, dato3, dato4 = 21, 10, 5, 20;
Ejemplo de operador de comparación Igual:
if (dato1 == dato2):
print ("'dato1' y 'dato2' son iguales.")
else:
print ("'dato1' y 'dato2' no son iguales.")
Ejemplo de operador de comparación Distinto:
if (dato1 != dato2):
print ("'dato1' y 'dato2' son distintas/diferentes.")
else:
print ("'dato1' y 'dato2' no son distintas/diferentes.")
Ejemplo de operador de comparación Diferente:
if (dato1 != dato2):
print ("'dato1' y 'dato2' son distintas/diferentes.")
else:
print ("'dato1' y 'dato2' no son distintas/diferentes.")
Ejemplo de operador de comparación Menor que:
if (dato1 < dato2):
print ("'dato1' es menor que 'dato2'.")
else:
print ("'dato1' no es menor que 'dato2'.")
Ejemplo de operador de comparación Mayor que:
if (dato1 > dato2):
print ("'dato1' es mayor que 'dato2'.")
else:
print ("'dato1' no es mayor que 'dato2'.")
Ejemplo de operador de comparación Menor o igual que:
if (dato3 <= dato4):
print ("'dato3' es menor o igual que 'dato4'.")
else:
print ("'dato3' no es menor o igual que 'dato4'.")
Ejemplo de operador de comparación Mayor o igual que:
if (dato4 >= dato3):
print ("'dato4' es mayor o igual que 'dato3'.")
else:
print ("'dato4' no es mayor o igual que 'dato3'.")