Sobes.tech
Intern — Middle
52

Понимание уровней видимости переменных в вложенных функциях

Условие задачи

Разберите, что происходит в следующем коде: как различаются переменные g_val, outer_val и inner_val в глобальном, внешнем и внутреннем контексте функции, и какое значение будет выведено.

g_val = 1

def outer_function():
    outer_val = 10

    def inner_function():
        inner_val = 20
        return

    inner_function()
    print(outer_val)
    return

outer_function()