erro de sintaxe na declaração não local em Python
Eu gostaria de testar o exemplo do uso da declaração não-local especificada na resposta emisto questão:
def outer():
x = 1
def inner():
nonlocal x
x = 2
print("inner:", x)
inner()
print("outer:", x)
mas quando tento carregar esse código, sempre recebo um erro de sintaxe:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "t.py", line 4
nonlocal x
^
SyntaxError: invalid syntax
Alguém sabe o que estou fazendo errado aqui (eu recebo o erro de sintaxe para cada exemplo que eu uso, contendononlocal
).