Что выведет этот код?


def test():
    global z
    z = 50

test()
print(z)

Код выведет число 50. Объявление global z внутри функции test() делает переменную z глобальной. Соответственно, присвоение z = 50 изменяет значение глобальной переменной z, которая затем и выводится на печать.

Разбор кода:

Этот код демонстрирует работу с глобальной переменной в Python.

  • def test():: Определяется функция с именем test.
  • global z: Внутри функции test объявляется, что переменная z является глобальной. Это означает, что функция будет работать с переменной z, определенной вне этой функции (в глобальной области видимости).
  • z = 50: Глобальной переменной z присваивается значение 50.
  • test(): Функция test вызывается.
  • print(z): После вызова функции test значение глобальной переменной z выводится на экран.

Результат выполнения:

Код выведет на консоль значение 50.

Объяснение:

Изначально переменная z не была определена в глобальной области видимости. Однако, использование global z внутри функции test создает или, если она уже существует, связывает переменную z внутри функции с глобальной переменной z. Когда функция test присваивает z = 50, это изменяет значение глобальной переменной z. Таким образом, при вызове print(z), выводится измененное значение глобальной переменной, то есть 50.

Важно:

Использовать global следует осознанно, поскольку изменение глобальных переменных может усложнить отладку и понимание кода, особенно в больших проектах. Старайтесь избегать чрезмерного использования глобальных переменных и по возможности передавайте данные между функциями через параметры и возвращаемые значения.

0