Курс 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. Исправление ошибки NameError
  3. Основы Python за 14 дней
  4. Поиск с помощью регулярных выражений
  5. Оператор walrus в Python
  6. Деление в Python
  7. Создание спинбокса в tkinter
  8. Переопределение метода __floordiv__
  9. Ускорение обработки данных с %autoawait
  10. Каналы Senior: Python, Java, Frontend, SQL, C++
  11. Управление фоновыми задачами в Python
  12. Ограничение итераций в Python
  13. Извлечение новостей с newspaper3k
  14. Многопроцессорное программирование в Python
  15. Проверка дублей в списке.
  16. Python 3.12: переиспользование кавычек
  17. Очистка данных с Pandas
  18. Модуль itertools: эффективная работа с итераторами
  19. Вложенные генераторы в Python
  20. Python Метод sleep() из time
  21. Нахождение пересечения множеств
  22. Игра «Угадывание чисел»
  23. Работа с датами в Python
  24. Объединение списков с использованием itertools.chain
  25. Сортировка элементов с OrderedDict
  26. Удаление дубликатов в pandas
  27. Отступы в Python
  28. Именованные кортежи в Python
  29. Оценка точности модели
  30. Роль запятой в Python
  31. Создание списков в Python
  32. Работа с NumPy.linalg
  33. Переопределение метода delitem в Python
  34. Проверка на палиндром
  35. Объединение словарей в Python
  36. Декораторы классов
  37. Разделение строк в Python
  38. Введение в PyTorch
  39. Чтение бинарного файла в Python.
  40. Генераторы списков в Python
  41. Генераторы списков
  42. Big O оптимизация
  43. Метод getitem для доступа к элементам последовательности
  44. Группы исключений в Python

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