Курс Python → Работа с исключениями в Python

Когда мы работаем с исключениями в Python, важно помнить о том, что переменная, к которой было привязано исключение с помощью ключевого слова «as», будет удалена в конце блока except. Это происходит потому, что исключения создают ссылочный цикл с фреймом стека, что может привести к утечкам памяти. Поэтому для того чтобы иметь возможность обратиться к исключению после блока except, необходимо присвоить его другой переменной.

Например, если у нас есть блок try-except, где мы ловим исключение и хотим обратиться к нему позже, мы должны присвоить его другой переменной. Например:


try:
    # какой-то код, который может вызвать исключение
except Exception as e:
    my_exception = e

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

Важно помнить, что если не присвоить исключение другой переменной в блоке except, оно будет удалено в конце блока, и обратиться к нему уже не удастся. Поэтому всегда следует быть внимательным при работе с исключениями и корректно обрабатывать их для избежания потенциальных проблем с утечкой памяти.

Твои коллеги будут рады, поделись в

Автор урока

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

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

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

  1. Просмотр атрибутов и методов класса
  2. Разделение строки на пары ключ-значение.
  3. Retrying в Python: повторные вызовы
  4. Генераторы списков
  5. Виртуальное окружение Python
  6. ChainMap.new_child() — добавление нового словаря
  7. Декораторы в Python
  8. Применение функции map() с лямбда-функциями
  9. Игра «Виселица» на Python
  10. Передача аргументов в Python
  11. Работа с коллекциями Python
  12. Открытие и запись файлов
  13. Транспонирование 2D-массива с помощью zip
  14. Форматирование строк в Python
  15. Функции range() в Python
  16. Лямбда-функции в Python
  17. Combobox в Tkinter
  18. Нарезка списков в Python
  19. Работа с deque из collections
  20. Генерация случайных чисел в Python
  21. Работа с Colorama
  22. Метод __irshift__ для Python
  23. Создание объекта времени
  24. Просмотр файла в Jupyter Noteboo
  25. Повторение элементов в Python
  26. Функциональное программирование в Python
  27. Курс по дообучению ChatGPT
  28. Переопределение метода __or__()
  29. Работа с датами в Python
  30. Улучшенные подсказки для импорта в Python 3.12
  31. Работа с переменными в Python
  32. Изменение переменной в Python: nonlocal
  33. Получение атрибутов и методов класса
  34. Открытие и редактирование скриптов Python
  35. Декоратор total_ordering для сравнения объектов
  36. Преобразование строки в число
  37. Использование подчеркивания в REPL
  38. Константы в модуле cmath
  39. Блок try…finally в Python
  40. Автоматизация действий с Pyautogui
  41. Функции map, filter и reduce
  42. Установка Git и AWS CLI
  43. Подсчет элементов в Python
  44. Явный импорт переменных
  45. Работа со временем в Python

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