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