Cómo usar la declaración if else con Python

1 mar 2021 4 min di lettura
Cómo usar la declaración if else con Python
Indice dei contenuti

Introducción

La toma de decisiones es uno de los conceptos fundamentales de la programación informática. Python admite declaraciones de control de flujo comunes que se encuentran en otros lenguajes, con algunas modificaciones. La if control if es una de las sentencias más básicas y conocidas que se utiliza para ejecutar código en función de una condición específica.

En este artículo, veremos los conceptos básicos de la if en Python.

Declaración if de Python

La forma más simple de la if en Python es la siguiente:

if EXPRESSION:
 STATEMENT

La if comienza con la if seguida de la expresión condicional.

El EXPRESSION debe ir seguida de dos puntos ( : ). Si EXPRESSION se evalúa como True, se ejecuta STATEMENT Si EXPRESSION devuelve False, no sucede nada, STATEMENT se ignora. STATEMENT puede ser cualquier declaración, incluidas declaraciones múltiples o if Para ejecutar ninguna instrucción, use la instrucción pass

El STATEMENT comienza con una sangría y termina con la primera línea sin sangría. La mayoría de las personas optan por utilizar la sangría de 4 o 2 espacios. La Guía de estilo oficial para el código Python recomienda usar 4 espacios por nivel de sangría y evitar mezclar el uso de tabulaciones y espacios para la sangría.

Echemos un vistazo al siguiente script de ejemplo que verifica si un cierto número es mayor que 5.

number = int(input('Enter a number: '))

 if number > 5:
 print(number, 'is greater than 5.')

Guarde el código en un archivo y ejecútelo desde la línea de comando:

python test.py

El guión le pedirá que ingrese un número. Por ejemplo, si ingresa 10, la expresión condicional se evaluará como True (10 es mayor que 5) y se ejecutará la función de print

10 is greater than 5.

Python admite operaciones de comparación estándar:

  • a == b: verdadero si a y b son iguales.
  • a!= b: verdadero si a y b no son iguales.
  • a > b: verdadero si a es mayor que b.
  • a >= b: verdadero si a es igual o mayor que b.
  • a < b: verdadero si a es menor que b.
  • a <= b: verdadero si a es igual o menor que b.

También puede usar la palabra clave in para verificar si un valor está presente en un iterable (cadena, lista, tupla, diccionario, etc.):

s = 'noviello'
 if 'ze' in s:
 print('True.')

Aquí hay otro ejemplo usando un diccionario:

d = {'a': 2, 'b': 4}
 if 'a' in d:
 print('True.')

Si se usa en un diccionario, la palabra clave in verifica si el diccionario tiene una clave específica.

Para negar la expresión condicional, use el operador lógico not:

number = int(input('Enter a number: '))

 if not number < 5:
 print(number, 'is greater than 5.')

Si... otra declaración

Una if..else evalúa una condición y ejecuta cualquiera de las sentencias basándose en el resultado.

La if..else tiene la siguiente forma:

if EXPRESSION:
 STATEMENT1
 else:
 STATEMENT2

Si EXPRESSION se evalúa como True, se ejecutará STATEMENT1 De lo contrario, si EXPRESSION devuelve False, se ejecutará STATEMENT2 Es posible tener solo una else en la declaración.

La palabra clave else extremo mosto con dos puntos ( : ) y estar en el mismo nivel de indentación de la palabra clave if apropiado.

else una cláusula else al script de ejemplo anterior:

number = int(input('Enter a number: '))

 if number > 5:
 print(number, 'is greater than 5.')
 else:
 print(number, 'is equal or less than 5.')

Si ejecuta el código e ingresa un número, el script imprimirá un mensaje diferente dependiendo de si el número es mayor o menor que /igual a 5.

Declaración If..elif..else

La elif es la abreviatura de else if.

La if..elif..else tiene la siguiente forma:

if EXPRESSION1:
 STATEMENT1
 elif: EXPRESSION2:
 STATEMENT2
 else:
 STATEMENT3

Si EXPRESSION1 se evalúa como True, se ejecutará STATEMENTS1 Si EXPRESSION2 se evalúa como True, se ejecutará STATEMENTS2 Si ninguna de las expresiones se evalúa como True, se ejecuta STATEMENTS3

La palabra clave elif debe terminar con dos puntos ( : ) y estar en el mismo nivel de indentación de la palabra clave if apropiado. Es posible tener una o más elif en la declaración. La else es opcional. Si else y todas las expresiones se evalúan como False, no se ejecutará ninguna de las declaraciones.

Las condiciones se evalúan secuencialmente. True se devuelve una condición Verdadera, las condiciones restantes no se ejecutan y el control del programa se mueve al final de las if.

elif añadir una cláusula elif a la secuencia de comandos anterior:

number = int(input('Enter a number: '))

 if number > 5:
 print(number, 'is greater than 5.')
 elif number < 5:
 print(number, 'is less than 5.')
 else:
 print(number, 'is equal to 5.')

A diferencia de la mayoría de los lenguajes de programación, Python no tiene declaraciones de switch o case Se puede usar una secuencia de múltiples elif switch o un sustituto de case

Declaraciones if anidadas

Python le permite anidar if if dentro de if. Generalmente, siempre debe evitar la sangría excesiva e intentar usar elif lugar de anidar if.

La siguiente secuencia de comandos le pedirá que ingrese tres números e imprima el mayor número de números.

number1 = int(input('Enter the first number: '))
 number2 = int(input('Enter the second number: '))
 number3 = int(input('Enter the third number: '))

 if number1 > number2:
 if number1 > number3:
 print(number1, 'is the largest number.')
 else:
 print(number3, 'is the largest number.')
 else:
 if number2 > number3:
 print(number2, 'is the largest number.')
 else:
 print(number3, 'is the largest number.')

Así es como se verá la salida:

Enter the first number: 455
 Enter the second number: 567
 Enter the third number: 354
 567 is the largest number.

Varias condiciones

La lógica de los or y and permite combinar múltiples condiciones en if.

Aquí hay otra versión del script para imprimir el mayor de los tres números. En esta versión, en lugar de if, usaremos el operador lógico and y elif.

number1 = int(input('Enter the first number: '))
 number2 = int(input('Enter the second number: '))
 number3 = int(input('Enter the third number: '))

 if number1 > number2 and number1 > number3:
 print(number1, 'is the largest number.')
 elif number2 > number3 and number2 > number3:
 print(number2, 'is the largest number.')
 else:
 print(number3, 'is the largest number.')

Conclusión

El if, if..else y if..elif..else le permiten controlar el flujo de ejecución de Python mediante la evaluación de ciertas condiciones.

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.