keyword nonlocal en Python
La keyword nonlocal en Python se usa para trabajar con variables dentro de funciones anidadas, donde la variable no debe pertenecer a la función interna.
La palabra reservada de esta lección forma parte del núcleo del lenguaje Python. No puedes usarla como nombre de variable; su significado es fijo y universal en cualquier proyecto.
Entender keywords reduce errores de sintaxis y acelera la lectura de código ajeno.
En esta lección de keyword nonlocal en Python combinamos explicación clara y código ejecutable. El objetivo es que entiendas el concepto y puedas reutilizarlo en tus propios scripts de Python.
Las palabras reservadas forman parte de la gramática del lenguaje: no puedes usarlas como nombres de variables. Memorizar su función te ayuda a leer código ajeno con fluidez.
Errores frecuentes: olvidar la indentación en bloques if, for o def; confundir = con ==; no importar un módulo antes de usarlo.
En esta lección de keyword nonlocal en Python combinamos explicación clara y código ejecutable. El objetivo es que entiendas el concepto y puedas reutilizarlo en tus propios scripts de Python.
Las palabras reservadas forman parte de la gramática del lenguaje: no puedes usarlas como nombres de variables. Memorizar su función te ayuda a leer código ajeno con fluidez.
Errores frecuentes: olvidar la indentación en bloques if, for o def; confundir = con ==; no importar un módulo antes de usarlo.
Utilice la palabra clave nonlocal para declarar que la variable no es local.
Ejemplo
Haz una función dentro de una función, que usa la variable x como una variable no local:
Ejemplo
print("Ejemplo de la lección")
x = 2 + 3
print(x)
Ejemplo
El mismo ejemplo anterior, pero sin la palabra clave nonlocal:
Ejemplo
def contador():
n = 0
def sumar():
nonlocal n
n += 1
return n
return sumar
c = contador()
print(c(), c())
La Keyword global se usa para hacer variables globales.
Practica keyword nonlocal en Python en el editor
Pon en práctica lo aprendido con nuestro editor Python interactivo. Cada ejercicio incluye el código de partida y un botón para abrirlo en una nueva pestaña, donde puedes modificarlo y ejecutarlo.
Ejercicio: Definir una función
Haz una función dentro de una función, que usa la variable x como una variable no local.
Ejemplo
def externa():
mensaje = "hola"
def interna():
nonlocal mensaje
mensaje = "adiós"
interna()
return mensaje
print(externa())
Ejercicio: Definir una función (2)
El mismo ejemplo anterior, pero sin la palabra clave nonlocal.
Ejemplo
def contador():
n = 0
def sumar():
nonlocal n
n += 1
return n
return sumar
c = contador()
print(c(), c())
Cómo practicar
1. Pulsa Ejecutar en el bloque de código.
2. Modifica un valor o argumento.
3. Vuelve a ejecutar y observa la consola.