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


x = 10

def show():
    print(x)

show()

Код выведет 10. Переменная x определена в глобальной области видимости и доступна внутри функции show(), так как функция не определяет локальную переменную с таким же именем.

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


x = 10
def show():
  print(x)
show()
  

Ответ: Этот код выведет 10.

Объяснение:

  • Переменная x инициализируется значением 10 в глобальной области видимости.
  • Функция show() определена и не принимает никаких аргументов. Внутри функции вызывается print(x).
  • При вызове функции show(), Python ищет переменную x. Сначала он ищет ее в локальной области видимости функции show(). Поскольку x не определена локально в функции, Python продолжает поиск в глобальной области видимости.
  • В глобальной области видимости переменная x определена и имеет значение 10.
  • Поэтому функция print(x) выводит значение 10.
0