Курс Python → Отладка в Python

Команда %debug в Python представляет собой мощный инструмент для отладки кода. Она позволяет активировать интерактивный отладчик в двух режимах: перед выполнением кода (точка останова) и после возникновения исключения (post-mortem). Первый режим позволяет установить точку останова в коде и проверить состояние переменных в этой точке. Для этого нужно указать аргументы команды %debug, например %debug имя_функции или %debug номер_строки.

Второй режим, post-mortem, активируется без аргументов. Если в процессе выполнения кода произошло исключение, команда %debug позволяет в интерактивном режиме изучить путь ошибки, состояние стека вызовов и переменных в момент возникновения исключения. Это очень удобно для анализа и исправления ошибок в коде.

Пример использования команды %debug:


def divide(x, y):
    result = x / y
    return result

try:
    divide(5, 0)
except ZeroDivisionError:
    %debug

В данном примере функция divide вызывается с аргументами 5 и 0, что приводит к возникновению исключения ZeroDivisionError. После этого срабатывает блок except, и команда %debug запускает интерактивный отладчик, позволяя изучить причину ошибки и состояние переменных в момент исключения.

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

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

Автор урока

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

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

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

  1. Работа с deque из collections
  2. Работа с пользовательским вводом
  3. Работа с модулем Calendar
  4. Метод repr() в Python
  5. Python Enum Weekday Usage
  6. Обновление множества в Python
  7. Декораторы в Python
  8. Профилирование кода на Python
  9. Проверка списка: any() и all()
  10. Определение локальных переменных в Python
  11. Создание словаря в Python
  12. Именование переменных в Python
  13. Асинхронное выполнение задач в процессах
  14. Выход из профиля в Django
  15. Переворот строки с помощью срезов
  16. Удаление элемента по индексу в Python
  17. Добавление вложенных списков
  18. Выражения-генераторы в Python
  19. Dict Comprehension в Python
  20. Генераторы в Python
  21. Генераторы в Python
  22. Инициализация объекта
  23. Функция findall() для поиска вхождений строки
  24. Извлечение чисел из текста
  25. Динамические маршруты во Flask
  26. Сложные типы данных в Python
  27. Избегайте пустого списка
  28. Перетасовка списков в Python
  29. Переворот последовательности
  30. Функциональное программирование в Python
  31. Решение переменной Шредингера
  32. Метод remove() для удаления элемента из списка
  33. Функция map() и ленивая оценка
  34. Подсчет вхождений элементов
  35. Запрос DELETE с библиотекой requests
  36. Профилирование с cProfile
  37. Оператор (*) в Python
  38. Активация Matplotlib в Jupyter
  39. Декоратор проверки активности
  40. Динамическая типизация в Python
  41. Поиск простых чисел
  42. Тестирование с responses
  43. Изменение объектов в Python
  44. Переопределение метода __eq__
  45. Работа с комбинациями в Python.
  46. Красивый вывод списка
  47. Удаление URL-адресов в Python

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