Saltar al contenido

match y case

Python · Unidad 21: Python avanzado

match compara un valor contra varias formas. Cada case es una opción, | acepta cualquiera de dos y case _ atrapa todo lo demás.

Hace lo mismo que una cadena de if y elif, pero se lee mejor cuando siempre comparas el mismo valor.

def tipo_dia(d):
    match d:
        case "sab" | "dom":
            return "descanso"
        case _:
            return "trabajo"

print(tipo_dia("dom"), tipo_dia("mar"))

Imprime

descanso trabajo

El resto de la explicación está en la lección, que es del plan completo.

Ejercicios de esta lección

Se hacen en la app, que los corrige al momento y explica por qué.

  1. 1. Predice la salida

    ¿Qué imprime este código?

  2. 2. Completa el código

    Completa para que cualquier otro color deje seguir.

  3. 3. Predice la salida

    ¿Qué imprime este código?

  4. 4. Completa el código

    Completa para quedarte con el primer elemento, haya los que haya.

  5. 5. Predice la salida

    ¿Qué imprime este código?

  6. 6. Encuentra el bug

    Debería decir descanso para el sábado y para el domingo. ¿Qué línea tiene el error?

  7. 7. Encuentra el caso que falla

    tam(xs) debería regresar "vacia", "uno" o "dos" según cuántos elementos tenga la lista, y "muchos" de tres en adelante. ¿Con cuál llamada falla?

  8. 8. Ordena las líneas

    Ordena para contestar un mensaje que llega como diccionario.

Hacer esta lección

Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.

Ver todas las lecciones →