LEGB, cierres y sombras en Python

Guía práctica de LEGB en Python: Local, Enclosing, Global y Builtin; cómo evitar UnboundLocalError con global y nonlocal para código robusto en backend e IA.

21 sept 2025 • 3 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

LEGB, cierres y sombras en Python explicados de forma clara y práctica para desarrolladores y equipos técnicos que diseñan aplicaciones complejas.

En Python las variables no siempre están donde parecen; cada ámbito actúa como una lámpara y su luz alcanza espacios distintos. El primer nivel es el ámbito local. Si se define una variable dentro de una función existe solo durante la ejecución de esa función. Esa variable nace y muere en la habitación donde se encendió la lámpara y no ilumina el exterior.

El segundo nivel son los cierres o ámbitos de cierre. En funciones anidadas una función interior puede ver nombres definidos en la función que la contiene. Si una variable no aparece en el ámbito local la búsqueda continúa hacia los ámbitos envolventes hasta encontrarla. Es útil imaginar puertas abiertas entre habitaciones que permiten ver la luz de una lámpara vecina.

Después está el ámbito global, que agrupa nombres definidos en el nivel superior del módulo o script. Es como la luz del sol que llega a todas las habitaciones del mismo edificio. Y por último existe el ámbito de nombres incorporados de Python, el universo de builtins compuesto por nombres como len o print que siempre están disponibles. El orden de búsqueda es conocido como la regla LEGB: Local, Enclosing, Global, Builtin. Python se detiene en la primera coincidencia.

La complejidad aparece cuando hay asignaciones en ámbitos interiores. Ante una asignación Python asume que la variable pertenece al ámbito actual, lo que puede provocar comportamientos inesperados. Si dentro de una función se asigna a una variable que también existe en un ámbito exterior, sin declarar la intención, Python tratará esa variable como local y devolverá un error si se intenta leer antes de asignarla, conocido como UnboundLocalError. Ese error es la señal de que la variable local todavía no tiene valor y que la intención de usar el nombre en otro ámbito no fue expresada.

Para declarar esa intención se usan las palabras clave global y nonlocal. global indica que la variable pertenece al módulo superior y que la asignación debe afectar a ese nombre global. nonlocal se utiliza dentro de una función anidada para decir que la variable asignada viene de un ámbito envolvente y no del ámbito local actual. Ambas herramientas permiten controlar dónde se crean o modifican las sombras, y por tanto evitar efectos no deseados en variables de mayor jerarquía.

Comprender LEGB y el comportamiento de las asignaciones no solo evita errores, sino que ayuda a diseñar código más limpio y mantenible. En proyectos profesionales, como desarrollo de backends, agentes de automatización o librerías de IA, definir claramente los ámbitos facilita pruebas, depuración y escalabilidad.

En Q2BSTUDIO aplicamos estas buenas prácticas en proyectos de software a medida y en el desarrollo de aplicaciones a medida, garantizando arquitecturas robustas y seguras. Nuestro equipo también diseña soluciones de inteligencia artificial y agentes IA para empresas, integrándolos con servicios cloud y con flujos de datos para inteligencia de negocio y power bi. Si necesita construir una solución personalizada consulte nuestro servicio de desarrollo de aplicaciones a medida o conozca nuestras capacidades en inteligencia artificial.

Además ofrecemos servicios de ciberseguridad y pentesting, servicios cloud aws y azure, servicios inteligencia de negocio y estrategias de ia para empresas, todo orientado a que su software y sus datos estén protegidos y aporten valor. Entender dónde residen las variables en el código es tan importante como definir dónde residen los datos en la arquitectura empresarial.

Si buscas consultoría en software a medida, integración de agentes IA, automatización de procesos o soluciones de business intelligence y power bi, en Q2BSTUDIO unimos experiencia en programación, inteligencia artificial y ciberseguridad para entregar resultados medibles y sostenibles.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.

Live Chat