Al igual que en otros lenguajes de programación, en Python, las situaciones condicionales se pueden manejar usando el comando if.

En este tutorial, hemos explicado lo siguiente con ejemplos:

  1. Ejemplo básico del comando if en Python para números
  2. Operadores del comando if en Python
  3. Ejemplo básico del comando if en Python para la comparación de cadenas
  4. Múltiples comandos en el bloque de condición if usando sangría
  5. Ejemplo del comando if else en Python
  6. Ejemplo del comando if else if en Python
  7. Ejemplo de declaración if compuesta en Python
  8. AND, OR, NOT en el comando if de Python
  9. Mensajes de error del comando if de Python

Esta es la sintaxis de la declaración if en Python. Los siguientes ejemplos mostrarán cómo se puede usar correctamente esta sintaxis.

"if" [expresión] ":" [bloque de código 1]
     ( "elif" [expresión] ":" [bloque de código 2] )*
     ["else" ":" [bloque de código 3]]

#1. Ejemplo básico del comando if en Python para números

El siguiente ejemplo ilustra cómo usar el comando if en Python cuando se realiza una prueba condicional usando números.

# cat if1.py
days = int(input("¿Cuántos días hay en marzo?: "))
if days == 31:
  print("Pasaste la prueba.")
print("¡Gracias!")

En el ejemplo anterior:

  • Primera línea: Aquí, solicitamos la entrada del usuario. La entrada será un entero, que se almacenará en la variable days.
  • Segunda línea: Este es el comando if, donde estamos comparando si el valor de la variable days es igual al valor numérico 31. Los dos puntos al final forman parte de la sintaxis del comando if, que debe incluirse.
  • Tercera línea: Esta línea comienza con una sangría de dos espacios al principio. Cualquier línea (una o más) que siga a la instrucción if, que tenga una sangría similar al principio, se considera parte del bloque de la instrucción if. En este ejemplo, solo tenemos una línea después de la instrucción if, que es esta tercera línea, que tiene dos espacios al principio para la sangría. Entonces, esta línea se ejecutará cuando la condición de la instrucción if sea verdadera. Es decir, si el valor de la variable days es igual a 31, esta tercera línea se ejecutará.
  • Cuarta línea: Esta línea está fuera del bloque de la instrucción if. Entonces, se ejecutará tanto si la instrucción if es verdadera como si es falsa.

La siguiente es la salida del ejemplo anterior, cuando la condición de la instrucción if es verdadera.

# python if1.py
¿Cuántos días hay en marzo?: 31
Pasaste la prueba.
¡Gracias!

La siguiente es la salida del ejemplo anterior, cuando la condición de la instrucción if es falsa.

# python if1.py
¿Cuántos días hay en marzo?: 30
¡Gracias!

Si eres nuevo en Python, esto te dará una excelente introducción a las Variables, Cadenas y Funciones de Python.

#2. Operadores del comando if en Python

Los siguientes son los diversos operadores que puedes usar en el comando if para las comprobaciones condicionales.

CondiciónOperador
Mayor que>
Mayor que o igual>=
Menor que<
Menor que o igual<=
Igual a==
Diferente de!=
Para identidad de objetois
Para identidad de objeto negadais not

#3. Ejemplo básico del comando if en Python para la comparación de cadenas

Similar al ejemplo anterior, también podemos usar el comando if de Python para la comparación de cadenas como se muestra en el ejemplo a continuación.

# cat if2.py
code = raw_input("¿Cuál es el código de estado de 2 letras para California?: ")
if code == 'CA':
  print("Pasaste la prueba.")
print("¡Gracias!")

En el código anterior:

  • Primera línea: Aquí estamos obteniendo la entrada sin procesar del usuario y almacenándola en la variable code. Esto se almacenará como una cadena.
  • Segunda línea: En este comando if, estamos comparando si el valor de la variable code es igual a la cadena CA. Ten en cuenta que hemos incluido el valor de la cadena estática entre comillas simples (no comillas dobles). Los dos puntos al final forman parte de la sintaxis del comando if.
  • Tercera línea: Como se explicó en el ejemplo anterior, esta línea se ejecutará cuando la condición del comando if sea verdadera, ya que esta línea tiene una sangría con espacios al principio.
  • Cuarta línea: Esta línea se ejecutará tanto si la condición del comando if es verdadera como si es falsa.

La siguiente es la salida del código de ejemplo anterior tanto para la condición if verdadera como para la falsa.

# python if2.py
¿Cuál es el código de estado de 2 letras para California?: CA
Pasaste la prueba.
¡Gracias!

# python if2.py
¿Cuál es el código de estado de 2 letras para California?: NV
¡Gracias!

#4. Múltiples comandos en el bloque de condición if usando sangría

En el ejemplo anterior, solo teníamos una instrucción que se ejecutaba cuando la condición if era verdadera.

El siguiente ejemplo muestra dónde se ejecutarán varias líneas cuando la condición if sea verdadera. Esto se hace haciendo una sangría adecuada al principio de las instrucciones que deben ser parte del bloque de condición if, como se muestra a continuación.

# cat if3.py
code = raw_input("¿Cuál es el código de estado de 2 letras para California?: ")
if code == 'CA':
  print("Pasaste la prueba.")
  print("Estado: California")
  print("Capital: Sacramento")
  print("Ciudad más grande: Los Ángeles")
print("¡Gracias!")

En el código anterior:

  • Primera línea: Aquí estamos obteniendo la entrada sin procesar del usuario y almacenándola en la variable code. Esto se almacenará como una cadena.
  • Segunda línea: En este comando if, estamos comparando si el valor de la variable code es igual a la cadena CA. Ten en cuenta que hemos incluido el valor de la cadena estática entre comillas simples (no comillas dobles). Los dos puntos al final forman parte de la sintaxis del comando if.
  • Tercera línea a la sexta línea: Todas estas líneas tienen una sangría igual al principio de la instrucción. En este ejemplo, las 4 instrucciones print tienen 2 espacios al principio. Entonces, estas instrucciones se ejecutarán cuando la condición if se vuelva verdadera.
  • Séptima línea: Esta instrucción print no tiene la misma sangría que los comandos anteriores. Entonces, no es parte del bloque de la instrucción if. Esta línea se ejecutará independientemente de si la instrucción if es verdadera o falsa.

La siguiente es la salida del ejemplo anterior, cuando la condición de la instrucción if es verdadera. Aquí, las 4 instrucciones print que son parte del bloque de condición if se ejecutan.

# python if3.py
¿Cuál es el código de estado de 2 letras para California?: CA
Pasaste la prueba.
Estado: California
Capital: Sacramento
Ciudad más grande: Los Ángeles
¡Gracias!

La siguiente es la salida del ejemplo anterior, cuando la condición de la instrucción if es falsa.

# python if3.py
¿Cuál es el código de estado de 2 letras para California?: NV
¡Gracias!

#5. Ejemplo del comando if else en Python

El siguiente ejemplo muestra cómo usar el comando if..else en Python.

# cat if4.py
days = int(input("¿Cuántos días hay en marzo?: "))
if days == 31:
  print("Pasaste la prueba.")
else:
  print("No pasaste la prueba.")
print("¡Gracias!")

En el ejemplo anterior:

  • Primera línea: Aquí, estamos solicitando la entrada del usuario. La entrada será un entero, que se almacenará en la variable days.
  • Segunda línea: Este es el comando if, donde estamos comparando si el valor de la variable days es igual al valor numérico 31. Los dos puntos al final forman parte de la sintaxis del comando if, que debe incluirse.
  • Tercera línea: Esta línea comienza con una sangría de dos espacios al principio. Cualquier línea (una o más) que siga a la instrucción if, que tenga una sangría similar al principio, se considera parte del bloque de la instrucción if para la condición verdadera.
  • Cuarta línea: Esta tiene la palabra clave else para este bloque if. Los dos puntos al final forman parte de la sintaxis del comando if..else, que debe incluirse.
  • Quinta línea: Esta línea comienza con una sangría de dos espacios al principio. Cualquier línea (una o más) que siga a la instrucción else, que tenga una sangría similar al principio, se considera parte del bloque de la instrucción if para la condición falsa.
  • Sexta línea: Esta línea está fuera del bloque de la instrucción if. Entonces, se ejecutará tanto si la instrucción if es verdadera como si es falsa.

El siguiente ejemplo también es similar al ejemplo anterior, pero este if..else usa una variable de cadena para la comparación.

# cat if5.py
code = raw_input("¿Cuál es el código de estado de 2 letras para California?: ")
if code == 'CA':
 print("Pasaste la prueba.")
else:
 print("No pasaste la prueba.")
print("¡Gracias!")

La siguiente es la salida de los ejemplos anteriores, cuando la condición de la instrucción if es falsa. Es decir, el bloque else se ejecutará aquí.

# python if4.py
¿Cuántos días hay en marzo?: 30
No pasaste la prueba.
¡Gracias!

# python if5.py
¿Cuál es el código de estado de 2 letras para California?: NV
No pasaste la prueba.
¡Gracias!

#6. Ejemplo del comando if else if en Python

En Python, if else if se maneja usando el formato if elif else.

El siguiente ejemplo muestra cómo usar el comando if..elif..else en Python.

# cat if6.py
code = raw_input("Escribe un código de estado de 2 letras que comience con la letra C: ")
if code == 'CA':
  print("CA es California")
elif code == 'CO':
  print("CO es Colorado")
elif code == 'CT':
  print("CT es Connecticut")
else:
  print("Inválido. Por favor, ingresa un código de estado válido que comience con la letra C")
print("¡Gracias!")

En el código anterior:

  • Cuando la primera condición if code == 'CO' falla, entonces pasa a la siguiente instrucción elif.
  • Cuando la condición elif code == 'CO' falla, entonces pasa a la siguiente instrucción elif code == 'CT'.
  • Cuando la condición elif code == 'CT' falla, entonces simplemente ejecuta lo que esté disponible como parte del bloque final else:.
  • En cualquier momento en que la primera condición if se vuelva verdadera, o cualquiera de las condiciones elif restantes se vuelva verdadera, entonces ejecuta la instrucción que es parte de su bloque y deja de comprobar más condiciones.
  • Esto también significa que cuando cualquiera de las condiciones if o elif se vuelve verdadera, la instrucción que es parte del bloque else no se ejecutará.
  • Además, al igual que en el ejemplo anterior, los dos puntos al final de las instrucciones if, elif, else son parte de la sintaxis de Python, que debe especificarse.

La siguiente es la salida cuando la primera condición if se vuelve verdadera.

# python if6.py
Escribe un código de estado de 2 letras que comience con la letra C: CA
CA es California
¡Gracias!

La siguiente es la salida cuando la primera condición elif se vuelve verdadera.

# python if6.py
Escribe un código de estado de 2 letras que comience con la letra C: CO
CO es Colorado
¡Gracias!

La siguiente es la salida cuando la segunda condición elif se vuelve verdadera.

# python if6.py
Escribe un código de estado de 2 letras que comience con la letra C: CT
CT es Connecticut
¡Gracias!

La siguiente es la salida cuando la condición if es falsa, y todas las demás condiciones elif también son falsas. Aquí, esto ejecuta el bloque else.

# python if6.py
Escribe un código de estado de 2 letras que comience con la letra C: NV
Inválido. Por favor, ingresa un código de estado válido que comience con la letra C
¡Gracias!

#7. Ejemplo de declaración if compuesta en Python

El siguiente ejemplo muestra cómo puedes usar comandos condicionales compuestos en la instrucción if.

# cat if7.py
a = int(input("Ingresa a: "))
b = int(input("Ingresa b: "))
c = int(input("Ingresa c: "))
if a < b < c:
  print("Éxito. a < b < c")

En el código anterior:

  • El bloque print se ejecutará solo cuando la condición if sea verdadera. Aquí, estamos usando una expresión compuesta para la instrucción if, donde solo será verdadera cuando a sea menor que b y b sea menor que c.

La siguiente es la salida cuando la condición if se vuelve verdadera.

# python if7.py
Ingresa a: 10
Ingresa b: 20
Ingresa c: 30
Éxito. a < b < c

La siguiente es la salida cuando la condición if se vuelve falsa.

# python if7.py
Ingresa a: 10
Ingresa b: 10
Ingresa c: 20

#8. AND, OR, NOT en el comando if de Python

También puedes usar los siguientes operadores en las expresiones del comando if de Python.

OperadorCondiciónDesc
andx and yVerdadero solo cuando x e y son verdaderos.
orx or yVerdadero si x o y son verdaderos.
notnot xVerdadero si x es falso. Falso si x es verdadero.

El siguiente ejemplo muestra cómo podemos usar la palabra clave «and» en la condición if de Python.

# cat if8.py
x = int(input("Ingresa un número > 10 y < 20: "))
if x > 10 and x < 20:
  print("Éxito. x > 10 y x < 20")
else:
  print("¡Por favor, intenta de nuevo!")

En el código anterior:

  • La instrucción if será verdadera solo cuando ambas condiciones mencionadas en la instrucción if sean verdaderas.
  • Es decir, x debe ser mayor que 10 Y x también debe ser menor que 20 para que esta condición sea verdadera. Entonces, básicamente el valor de x debe estar entre 10 y 20.

La siguiente es la salida cuando la condición if se vuelve verdadera. Es decir, cuando ambas expresiones mencionadas en la instrucción if son verdaderas.

# python if8.py
Ingresa un número > 10 y < 20: 15
Éxito. x > 10 y x < 20

La siguiente es la salida cuando la condición if se vuelve falsa. Es decir, solo una de las expresiones mencionadas en la instrucción if es verdadera. Entonces, toda la instrucción if se vuelve falsa.

# python if8.py
Ingresa un número > 10 y < 20: 5
¡Por favor, intenta de nuevo!

#9. Mensajes de error del comando if de Python

Los siguientes son algunos de los mensajes de error que podrías ver al usar el comando if.

Este error IndentationError ocurre cuando no se da una sangría adecuada para la instrucción que sigue al comando if.

# python if9.py
  File "if3.py", line 4
    print("Estado: California")
                             ^
IndentationError: unindent does not match any outer indentation level

El siguiente SyntaxError ocurre cuando no se especifican los dos puntos : al final de la instrucción if de Python

# python if9.py
  File "if.py", line 2
    if days == 31
                ^
SyntaxError: invalid syntax

El mismo SyntaxError ocurrirá cuando se especifique un operador que no es válido. En este ejemplo, no hay ningún operador llamado -eq en Python. Entonces, este comando if falla con un error de sintaxis. También obtendrás un SyntaxError similar cuando especifiques elseif en lugar de elif.

# python if9.py
  File "if.py", line 2
    if days -eq 31:
                 ^
SyntaxError: invalid syntax

¡Ayúdanos compartiendo el artículos y siguiéndonos en nuestras redes sociales!

Categorizado en:

Python,