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


x = 3

def func():
    global x
    x = 7
    return x

func()
print(x)

После выполнения кода будет выведено число 7. Это происходит потому, что функция func() использует ключевое слово global x, которое позволяет изменить глобальную переменную x, а не создать локальную переменную с тем же именем. Таким образом, присваивание x = 7 внутри функции изменяет значение глобальной переменной x, и при выводе на печать будет напечатано новое значение x.

Вопрос: Что выведет следующий код?


x = 3
def func():
    global x
    x = 7
    return x
func()
print(x)
  

Ответ: 7

Объяснение:

  1. Сначала переменная x инициализируется значением 3 в глобальной области видимости.
  2. Затем определяется функция func(). Ключевое слово global x внутри функции указывает, что мы имеем дело с глобальной переменной x, а не с локальной переменной с тем же именем.
  3. Функция func() вызывается. Внутри этой функции глобальная переменная x изменяется на 7. Функция возвращает значение 7, но возвращаемое значение никуда не сохраняется.
  4. Наконец, print(x) выводит значение глобальной переменной x, которая теперь равна 7, поскольку функция func() изменила ее.

Таким образом, программа выведет 7.

0