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

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

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


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

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

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

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

Автор урока

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

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

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

  1. Ввод нескольких значений
  2. Структуры данных в Python
  3. Перебор элементов списка в Python
  4. Объявление переменных в Python
  5. Функции с необязательными аргументами
  6. Удаление элемента по индексу в Python
  7. SciPy: широкий функционал для математических операций
  8. Модуль os: работа с файлами и папками
  9. Непрерывная проверка в Python
  10. Многострочные комментарии в Python
  11. Метод count в Python: почему count(», ») возвращает 4?
  12. Условное добавление элементов в список
  13. Оператор объединения словарей
  14. Создание обратного итератора
  15. Копирование списков в Python
  16. Обработка исключения UnboundLocalError
  17. Декораторы с аргументами в Python
  18. Участие в сообществе @selectel
  19. Удаление дубликатов с сохранением порядка с помощью dict.fromkeys
  20. Функция rsplit() в Python
  21. Перевод текста с Python Translator
  22. Работа с каталогами в Python
  23. Работа с defaultdictами в Python
  24. Обратное распространение ошибки
  25. Удаление файлов и папок в Python
  26. Основы работы с os
  27. Поиск с библиотекой Google
  28. Метод join для наборов
  29. Принципы LSP и ISP в Python
  30. Работа с argparse
  31. Python UserString — создание подклассов строк
  32. Модуль inspect
  33. Декораторы для регистрации функций
  34. Работа с модулем bisect
  35. Установка и использование pyshorteners
  36. Протокол управления контекстом
  37. Бинарный поиск
  38. Профилирование с cProfile
  39. Проверка вхождения подстроки
  40. Python reversed() функция
  41. Замыкания в Python
  42. Именованные срезы в Python
  43. Модуль subprocess: запуск внешних команд
  44. Настройка логгера Logzero
  45. Логирование в Python
  46. Python: изменяемые и неизменяемые коллекции
  47. Итераторы в Python

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