Pasando el argumento de la función principal a la función anidada Python
Aquí está mi código:
def f(x):
def g(n):
if n < 10:
x = x + 1
g(n + 1)
g(0)
Cuando evalúo f (0), habría un error "x referenciado antes de la asignación".
Sin embargo, cuando use "imprimir x" en lugar de "x = x + 1", funcionará.
Parece que en el ámbito de g, solo puedo usar x como "ocurrencia de uso" pero no "ocurrencia de enlace". Supongo que el problema es que f pasa a g solo el VALOR de x.
¿Lo estoy entendiendo correctamente o no? Si no, ¿puede alguien explicar por qué el lado izquierdo de "x = x + 1" no está definido antes de la referencia?
Gracias