def test():
global a
a = 100
a = 10
test()
print(a)
test()
изменяет глобальную переменную a
, присваивая ей значение 100. Вызов test()
устанавливает это значение, и последующий print(a)
выводит уже измененное значение глобальной переменной.
Вопрос: Что выведет следующий код?
def test():
global a
a = 100
a = 5 # добавлено для наглядности
test()
print(a)
Ответ:
Код выведет 100
.
Объяснение:
test()
, которая использует ключевое слово global a
. Это указывает на то, что внутри функции мы будем работать с глобальной переменной a
, а не создавать локальную переменную с тем же именем.test()
вызывается.test()
глобальной переменной a
присваивается значение 100
.test()
, управление возвращается в основную часть программы.print(a)
выводит значение глобальной переменной a
, которое было изменено функцией test()
. Таким образом, на экран будет выведено 100
.Важно: Использование глобальных переменных может усложнить отладку и понимание кода, особенно в больших проектах. По возможности, следует избегать их использования и передавать данные между функциями через аргументы и возвращаемые значения.