¿Cómo imprimir declaración crear una variables locales
Las preguntas están al final de este post.
Primer fragmento: Diccionario de variables locales vacío.
def outer():
x = 1
def inner():
print "Local variables: %s" % locals()
return inner()
print outer()
Salida: variables locales: {}
Segundo fragmento de código: Imprima la función interior () y cree una entrada de variable local.
def outer():
x = 1
def inner():
print x
print "Local variables: %s" % locals()
return inner()
print outer()
Salida:
1
Local variables: {'x': 1}
Tercer Fragmento: del x desde dentro de la función interna:
def outer():
x = 1
def inner():
print x
print "Local variables: %s" % locals()
del x
return inner()
print outer()
Salida:
>>> outer()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 7, in outer
File "<stdin>", line 4, in inner
UnboundLocalError: local variable 'x' referenced before assignment
>>>
Preguntas:
En Second Snippet, cómo la declaración de impresión crea una variable local.Si crea una variable local dentro de la función interna, no puedo borrarla.¿Podría alguien ayudarme por favor a entender esto?