No existe la sentencia switch en Python, pero existen equivalentes dependiendo de lo que se desee alcanzar. El uso más conocido de switch es evaluar un valor y evitar anidar múltiples sentencias if.

Alternativas y equivalentes a switch en Python

Alternativas y equivalentes a switch en Python

Aquí se explica justamente eso: cómo hacer un equivalente a switch en Python.

Cuando se desea evaluar una sentencia con múltiples condiciones

Se puede observar el caso más común cuando se desea comparar el valor de un elemento con múltiples condiciones. Por ejemplo, dar a elegir al usuario cuál opción desea, y evaluar dependiendo de ello (esto fue aplicado en el ejemplo de Python con MongoDB):

Ese es un switch en un universo en donde Python lo incorpora, sin embargo, en la actualidad no existe. Por lo tanto, el código debe quedar de la siguiente manera:

Tal vez al principio es un poco engorroso, pero el equivalente a switch en Python son muchas sentencias if, con elif (que significa else if) y else, el cual es el caso default.

En caso de obtener un valor

Otro uso de switch en Python es cuando se quiere obtener un valor de una función a partir de un argumento que puede tener múltiples valores. Por ejemplo, obtener el nombre del día a partir de su número; tomando el domingo como 0, el lunes como 1 y finalmente el sábado como 6.

Para esto, lo primero que se piensa es en escribir una función de la siguiente manera:

Está bien, y usa el equivalente al switch en Python, pero puede ser escrita de mejor manera:

De esta manera se usa un diccionario y a su método get, el cual recibe la clave del valor que se desea obtener (algo así como el índice) y el valor por defecto en caso de que la clave no exista.

Conclusión

En conclusión no hay sentencia switch en Python, pero existen equivalentes para todos los casos. De hecho, se podría decir que switch es azúcar sintáctica para los if.


Estoy disponible para trabajar en tu proyecto o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.
Si el post fue de tu agrado muestra tu apoyo compartiéndolo, suscribiéndote al blog, siguiéndome o realizando una donación.

Suscribir por correo

Ingresa tu correo y recibirás mis últimas entradas sobre programación, open source, bases de datos y todo lo relacionado con informática

Únete a otros 2,601 suscriptores


parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

1 Comentario

Programa que indica la situación de un alumno en Python - Parzibyte's blog · abril 2, 2019 a las 6:00 am

[…] otros lenguajes de programación lo haríamos con switch, pero en Python no existe switch así vamos a hacerlo con unos if y […]

Deja un comentario

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

A %d blogueros les gusta esto: