4Geeks logo
Sobre Nosotros

Catálogo de contenidos

Para los geeks autodidactas, este es nuestro extenso catálogo de contenido con todos los materiales y tutoriales que hemos desarrollado hasta el día de hoy.

Tiene sentido comenzar a aprender leyendo y viendo videos sobre los fundamentos y cómo funcionan las cosas.

Data Science and Machine Learning - 16 wks

Full-Stack Software Developer - 16w

Buscar en lecciones

Aprendizaje social y en vivo

La forma más eficiente de aprender: Únete a una cohorte con compañeros, transmisiones en vivo, sesiones improvisadas de codificación, tutorías en vivo con expertos reales y mantenga la motivación.

← Regresar a lecciones
Editar en Github

Condicionales en la programación en Python

Introducción a los condicionales en Python
¿Qué tipo de condiciones/preguntas podemos usar/hacer?
  • Operadores lógicos en Python

Introducción a los condicionales en Python

Dominar el uso de las condiciones es una de las 5 habilidades fundamentales de construir algoritmos:

  1. Variables.
  2. Condicionales.
  3. Arrays(Arreglos).
  4. Loops(Bucles).
  5. Funciones.

El uso de condicionales es la única forma en que los desarrolladores tienen que decirle a la computadora cómo tomar decisiones en tiempo real, muy similar a cómo funcionan los algoritmos.

Digamos que estamos construyendo un programa para ayudarnos a elegir qué almacenar y odiamos el color azul, podemos decirle a la computadora que evite el azul usando una condición como esta:

1if color == 'blue': 2 # haz algo 3else: 4 # haz otra cosa 5

Condicionales

🔗 El uso de switch no esta disponible en python

Primero veamos ¿qué es una expresión lógica en Python?

La forma más fácil de entender expresiones lógicas (al menos para esta lectura en particular), es pensar en ellas como en preguntas que le puedes hacer al computador sobre nuestras variables, por ejemplo:

  1. Si el usuario es mayor de edad.
  2. Si hoy es martes.
  3. Miles de otras preguntas.

Para hacer una pregunta, o excusar condicionalmente un conjunto particular de líneas, primero necesitas tener datos (información) almacenados en variables útiles, arriba teníamos las variables edad_usuario, dia, modelo_carro y num_de_cauchos.

Si no tenemos la información prealmacenada en variables no podemos hacer ninguna pregunta, ¡todo es cuestión de estrategia y planificación!

Por ejemplo, si tenemos la edad del usuario almacenada en una variable edad entonces, y solo entonces, podremos codificar algo como:

1# Se utiliza dos veces igual (==) cuando quieres comparar en lugar de asigner el valor 2if edad == 25: 3 print("Eres mayor de edad!!")

¿Qué tipo de condiciones/preguntas podemos usar/hacer?

El ejemplo anterior era una condición simple, pero en la vida real elegir qué ponerse implica una combinación de varias condiciones para tomar la decisión final, por ejemplo: Veamos este algoritmo que te dice si tienes gripe.

Hit by car or have a flu

Si desea representar este algoritmo en Python, se verá así:

1feels_like_hit_by_train = True 2you_were_hit_by_train = False 3 4if feels_like_hit_by_train == True: 5 if you_were_hit_by_train == True: 6 print("No tienes gripe") 7 else: 8 print("Tienes gripe") 9else: 10 print("No tienes gripe")

Básicamente, este algoritmo tiene dos variables a considerar: siente_como_atropellado_por_tren y usted_fue_atropellado_por_tren. Nuestro trabajo como desarrolladores es sentarnos y tratar de preparar una estrategia y llegar a un algoritmo que resuelva un problema.

Operadores lógicos en Python

Para hacer una pregunta, tenemos las siguientes comparaciones: ==, >, <, !=, is None, is not None, in:

OperadorEjemploDescripción
==if a == bSi el valor de la variable A es igual a B
<if a < bSi el valor A es menor que B
>if a > bSi el valor A es mayor que B
!=if a != bSi el valor de A es diferente B
is not Noneif a is not NoneSi a es diferente de None
is Noneif a is NoneSi el valor de A es igual a None
inif name in ['bob','maria','nancy']Si el valor de name esta contenido dentro de la lista de nombres

Operadores AND y OR en Python

Otra forma de escribir el algoritmo es combinar preguntas en la misma condición utilizando los operadores AND y OR:

1siento_que_me_atropello_un_carro = True 2me_atropello_un_carro = False 3 4if siento_que_me_atropello_un_carro and me_atropello_un_carro: 5 print("No tienes gripe") 6elif siento_que_me_atropello_un_carro: 7 print("Tienes gripe")

Como puedes ver, usamos elif por primera vez, para codificar más rápido. Otro truco que puedes usar es el siguiente:

OriginalEquivalente
En lugar de if siento_que_me_atropello_un_carro == trueescribes if siento_que_me_atropello_un_carro
En lugar de if me_atropello_un_carro == falseescribes if !me_atropello_un_carro

If...else en Python

También puedes usar la expresión else para referirte a la negación de la primera condición:

1if color "azul": 2 # Descarta esta prenda de vestir 3else: 4 # Guárdala en mi armario 5 6edad = 12 7if (edad < 18): 8 print("Es mayor de edad") 9else: 10 print("No es mayor de edad") 11

También puedes anidar condiciones if...else una sobre la otra, de esta forma:

1if edad > 16: 2 # No puedes hacer nada 3elif age < 18: 4 # A estas alturas, ya sabemos que mayor de 15 por que sino no hubiese ingresado a la primera condición. 5elif age < 21: 6 # Si el algoritmo ingresa aquí, sabemos que es mayor de 17 7else: 8 # Si el algoritmo ingresa aquí, sabemos que es mayor de 20 9

Aquí hay otro ejemplo que ejecuta un algoritmo para saber si un número tiene centenas:

1valor = 14 2 3if valor < 10: 4 print("El valor es una unidad") 5elif valor < 100: 6 print("El valor es una decena") 7elif valor < 1000: 8 print("El valor es una centena") 9elif valor < 10000: 10 print("El valor es un millar") 11else: 12 print("Es un número grande") 13

El switch en Python

Python no tiene una sentencia switch.

conclusión

Hay que saber qué preguntas hacer. El ejemplo anterior era una condición simple, pero en la vida real, elegir qué hacer implica una combinación de varias condiciones para tomar la decisión final, por ejemplo:

Veamos este algoritmo que le dice a una computadora cómo decidir qué ponerse durante el día de San Valentín:

Qué hacer en San Valentín

1if voy_a_salir: 2 if puedo_comprar_una_hamburguesa: 3 if con_queso: 4 # haz algo 5 else: 6 if blazers > 3: 7 # haz algo 8 else: 9 # haz algo 10 elif sus_pantalones: 11 # haz algo 12 else: 13 # haz algo c 14else: 15 if desnuda_ante_puerta: 16 # haz algo 17 elif blazers > 3: 18 # haz algo 19 else: 20 # haz algo