Назад к вопросам
Middle
73
questionbank
Как можно ограничить видимость глобальной переменной между двумя функциями в языке Python?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Используя область видимости (scoping) и функции как объекты первого класса. Можно передать переменную как аргумент или использовать замыкания.
Пример передачи аргумента:
def function1(variable):
# Использование variable
print(f"function1: {variable}")
def function2(variable):
# Использование variable
print(f"function2: {variable}")
# Передаем переменную в каждую функцию
my_variable = "Hello"
function1(my_variable)
function2(my_variable)
Пример использования замыкания:
def outer_function():
# Локальная переменная, доступная только функциям внутри outer_function
scoped_variable = "Scoped!"
def inner_function1():
# Доступ к scoped_variable через замыкание
print(f"inner_function1: {scoped_variable}")
def inner_function2():
# Доступ к scoped_variable через замыкание
print(f"inner_function2: {scoped_variable}")
return inner_function1, inner_function2
# Получаем функции, которые "запомнили" scoped_variable
func1, func2 = outer_function()
# Вызываем функции, переменная видна только им
func1()
func2()