Capítulo 18. Bloques with, match y else
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Los gestores de contexto pueden acabar siendo casi tan importantes como la propia subrutina. Sólo hemos arañado la superficie con ellos. [...] Basic tiene una sentencia
with, hay sentenciaswithen muchos lenguajes. Pero no hacen lo mismo, todas hacen algo muy superficial, te ahorran las repetidas búsquedas de [atributos] por puntos, no hacen la configuración y la desconexión. Sólo porque tengan el mismo nombre no pienses que es lo mismo. La declaraciónwithes muy importante.1Raymond Hettinger, elocuente evangelista de Python
Este capítulo de trata de las características del flujo de control que no son tan comunes en otros lenguajes, y por esta razón tienden a pasarse por alto o a infrautilizarse en Python. Son las siguientes:
-
La declaración
withy el protocolo del gestor de contexto -
Coincidencia de patrones con
match/case -
La cláusula
elseen las declaracionesfor,while, ytry
La sentencia with crea un contexto temporal y lo derriba de forma fiable, bajo el control de un objeto gestor de contexto. Esto evita errores y reduce el código repetitivo, haciendo que las API sean al mismo tiempo más seguras y fáciles de usar. Los programadores de Python están encontrando muchos usos para los bloques with más allá del cierre automático de archivos.
Hemos visto la concordancia de patrones en capítulos anteriores, pero ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access