Передача аргумента из родительской функции во вложенную функцию Python

вот мой код:

def f(x):
    def g(n):
        if n < 10:
            x = x + 1
            g(n + 1)
    g(0)

Когда я оцениваю f (0), будет ошибка "x ссылка перед назначением".

Однако, когда я использую «print x» вместо «x = x + 1», это будет работать.

Кажется, что в области g я могу использовать только x как «вхождение в использование», но не «вхождение вхождение». Я предполагаю, что проблема в том, что f передает g только ЗНАЧЕНИЕ x.

Я правильно понимаю или нет? Если нет, может кто-нибудь объяснить, почему левая сторона "x = x + 1" не определена перед ссылкой?

Спасибо

Ответы на вопрос(2)

Ваш ответ на вопрос