@Eugene523

Можно ли запретить возможность использовать глобальные переменные в функциях?

Можно ли запретить возможность использовать глобальные переменные в функциях?
Вот допустим у меня есть код:
a = 5

def some_function():
    b = 2 * a
    print(b)

some_function()

Мне бы хотелось, чтобы такой код не интерпретировался. То есть можно использовать только те переменные, которые переданы в качестве аргументов или объявлены в теле функции. Можно ли это сделать?
  • Вопрос задан
  • 133 просмотра
Решения вопроса 1
@bbkmzzzz
Нельзя.
Не использовать "а" в функции. Зачем эта "а" нужна в области модуля?
Давать переменным адекватные имена, чтобы было понятно зачем она нужна.
Используйте классы, а переменные уровня модуля только для констант.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Ответ написан
Комментировать
@Eugene523 Автор вопроса
Я понял. Надо все переменные объявлять только внутри функций. К примеру:
def main():
    a = 0

Тогда если у меня есть упоминание на неизвестную переменную, которой нет в глобальной области, то код не должен скомпилироваться.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы