Курс Python → Область видимости переменных в Python

В Python переменные могут иметь область видимости, в которой они доступны для использования. В случае исчезающей переменной из внешней области видимости, переменная может быть удалена из-за выполнения определенного условия или блока кода. Например, если переменная была определена внутри функции и была удалена после выполнения этой функции, она не будет доступна во внешней области видимости.

В предоставленном примере переменная ‘e’ была удалена из-за выполнения блока except. Это связано с тем, что в Python все переменные в блоке кода имеют область видимости в этом блоке. Поэтому после выполнения блока except переменная ‘e’ больше не доступна во внешней области видимости.

Однако, стоит отметить, что данное поведение не распространяется на функции. Функции имеют свои собственные области видимости, поэтому переменные, определенные внутри функции, остаются доступными только внутри этой функции. Это позволяет избежать конфликтов и переопределения переменных в различных частях кода.

В Python 2.x, как упомянуто в инструкции, переменная ‘e’ присваивается экземпляру Exception(). При попытке печати этой переменной ничего не выводится, так как объект Exception() не имеет стандартного метода вывода. Для того чтобы убедиться, что переменная ‘e’ действительно существует и имеет значение, можно использовать функцию print() или другие методы вывода значений переменных.


# Пример кода:
try:
    x = 1 / 0
except ZeroDivisionError as e:
    print("Ошибка деления на ноль:", e)

print(e)  # Вызовет ошибку, так как переменная 'e' удалена после выполнения блока except
Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Оператор объединения словарей
  2. Codecademy в Telegram
  3. Генератор списка с условием if
  4. Удаление и повторная вставка ключа в OrderedDict
  5. Создание новых функций через partial
  6. Очистка списка от False, None, 0, «»
  7. Обработка исключений с блоком else
  8. Модуль array: создание и использование массивов
  9. Запуск внешних программ с subprocess
  10. Создание и использование модулей в Python
  11. Возврат значений из генератора
  12. Объединение итераторов
  13. Объединение кортежей в Python
  14. Работа с GitHub в Telegram
  15. Декодирование байтов в строку
  16. Группировка элементов Python
  17. Работа с SQLite в Python
  18. Генераторы в Python
  19. Делегирование в Python
  20. Работа с deque из collections
  21. Фильтрация данных в Python.
  22. Асинхронное программирование с asyncio
  23. Метод __call__ в Python
  24. Ошибка NotImplemented в Python
  25. Enum в Python: создание и использование перечислений
  26. Активация Matplotlib в Jupyter
  27. Участие в сообществе @selectel
  28. Преобразование букв в нижний регистр
  29. Итерация по итерируемым объектам
  30. Генерация UUID в Python
  31. Извлечение аудио из видео
  32. Работа с прокси в Python
  33. JMESPath в Python
  34. Бинарный поиск
  35. Обработка исключений в Python
  36. Работа с контекстными переменными
  37. Создание словаря через dict comprehension
  38. Тест скорости набора текста на Python
  39. Функции any() и all() в Python
  40. Возвращение нескольких значений через кортеж или класс
  41. Измерение времени выполнения кода
  42. Работа со строками в Python.
  43. Команда %dhist — список посещенных каталогов
  44. Список и кортеж в Python
  45. Отладчик pdb: начало работы
  46. Преобразование символов с помощью map
  47. Именованные срезы в Python
  48. Метод join для объединения строк
  49. Преобразование Word в PDF с Spire.Doc
  50. Функции-генераторы в Python

Marketello читают маркетологи из крутых компаний