Локальные и глобальные переменные

Где переменная создана — там она и «живёт». Понимание этого снимает частые вопросы «почему не видно значение».

Дрон Кодер — программирование для детей и взрослых в игровой форме. Начать бесплатно

Локальные: живут внутри функции

Переменная, созданная внутри функции, локальная — она существует только во время работы функции и снаружи не видна. Это хорошо: функции не мешают друг другу, используя одинаковые имена.

def f():
    x = 5      # локальная
    print(x)
f()
# print(x) вызвал бы ошибку: x снаружи не существует

Глобальные: видны везде

Переменная, созданная вне функций, глобальная — её можно читать внутри функций. Но изменять глобальную изнутри функции по умолчанию нельзя: попытка присвоить создаст новую локальную с тем же именем.

Как быть

Хорошая практика — не менять глобальные из функций, а передавать значения через аргументы и возвращать через return. Так код понятнее и меньше скрытых зависимостей. Ключевое слово global есть, но пользоваться им стоит редко.

Частые вопросы

Почему переменная из функции не видна снаружи? Она локальная и существует только внутри функции.

Как вернуть значение наружу? Через return, а не через глобальные переменные.

Начать игру бесплатно
Попробуй прямо здесь
Уровень 1

Задание

Все обучающие игры «Дрон Кодер»

Одна вселенная — много модулей. Программирование, математика и логика в одной игре: пиши код, считай, решай задачи — а дрон-фермер летит по полю и собирает урожай. В каждом модуле первый уровень бесплатный, без регистрации.

📈 Математика · алгебра и графики
📖 Русский язык