Modificar las variables de función desde la función interna en python
Está bien obtener e imprimir la variable de función externaa
def outer():
a = 1
def inner():
print a
También está bien para obtener la matriz de la función externaa
y añadir algo
def outer():
a = []
def inner():
a.append(1)
print a
Sin embargo, causó algunos problemas cuando intenté aumentar el número entero:
def outer():
a = 1
def inner():
a += 1 #or a = a + 1
print a
>> UnboundLocalError: local variable 'a' referenced before assignment
¿Por qué sucede esto y cómo puedo lograr mi objetivo (aumentar el número entero)?