Avatar ·

¿Por qué la variable global no está disponible desde la función?

📁 función, python, IA

Por favor, explícame por qué la función no imprime el valor de s en la consola

s = ""Soy una variable global""def foo():    print(s)    s = 'Restablecer variable global'foo()

Supuse que cuando el intérprete llegue a la línea print(s), entenderá que no existe tal variable en el ámbito de la función foo. Por lo tanto, comenzará a buscarla en el ámbito externo, pero allí está.

Sin embargo, como resultado, en la consola se muestra el siguiente mensaje de error:

Traceback (most recent call last):  File ""index.py"", line 7, in <module>    foo()  File ""index.py"", line 4, in foo    print(s)UnboundLocalError: local