Espacio publicitario (banner)
AD

¿Ya dominas lo básico? Un curso estructurado de Python es la vía rápida para dar el salto.

Ver cursos de Python en Udemy

Enlace de afiliado. No te cuesta nada extra.

🐍Lecciones de Python
Lección 53 / 69

Fundamentos de la sentencia with (gestores de contexto)

En esta lección verás lo básico de la sentencia with de Python (los gestores de contexto), para entender este mecanismo que permite trabajar con recursos de forma segura. Está pensada para quien busca «sentencia with en Python» o «gestor de contexto en Python».

Escribir with open(...) as f: cierra el archivo automáticamente en cuanto la ejecución sale del bloque. No hay riesgo de olvidar la llamada a close(), así que puedes trabajar con archivos con seguridad. Este mismo patrón —un diseño seguro muy propio de Python— aparece de forma general en cualquier «operación con un inicio y un final emparejados», más allá de los archivos: conexiones a bases de datos, gestión de bloqueos, etc.

El código de ejemplo escribe en un archivo con with open("nota.txt", "w") as f: y después lo vuelve a leer en un bloque with aparte. Comprueba que el archivo se cierra automáticamente al terminar cada bloque, sin ninguna llamada explícita a close().

Un error habitual al empezar es intentar usar el objeto de archivo fuera del bloque with, lo que provoca un error. Cuando sales del bloque, el archivo ya está cerrado, así que todo el trabajo que necesite el contenido tiene que completarse dentro.

También puedes dotar a tus propias clases de comportamiento de gestor de contexto (con los métodos __enter__ y __exit__), lo que abre usos más avanzados. Las conexiones a bases de datos y la gestión de bloqueos son solo dos ejemplos del amplio abanico de usos reales de este mecanismo.

Python
SALIDA

💡 El motor de Python puede tardar unos segundos en cargarse la primera vez que ejecutas código.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)