Курс 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. Решение переменной Шредингера
  2. Отношения подклассов в Python
  3. Работа с argparse
  4. Структуры данных в Python
  5. Создание генераторов
  6. Сортировка данных с лямбда-функциями
  7. Перезагрузка оператора в Python
  8. Оптимизация строк в Python
  9. Создание и использование ChainMap
  10. Хеширование паролей с использованием salt
  11. Обработка исключений в Python 3
  12. Работа с WindowsPath()
  13. Шаблоны и наследование в Flask
  14. Создание лямбда-функций
  15. Извлечение новостей с newspaper3k
  16. Получение списка кортежей из словаря
  17. Принцип одной функции
  18. Извлечение чисел из текста
  19. Наиболее частотные элементы с помощью Counter
  20. Руководство по библиотеке pydantic
  21. Инверсия списков и строк в Python
  22. Сортировка в Python
  23. Отслеживание прогресса с tqdm
  24. Основные методы NumPy
  25. Иерархия классов в Python
  26. Использование html-скриптов в Jupyter Notebook
  27. Работа с набором данных CIFAR10 в PyTorch
  28. Работа с NumPy.linalg
  29. Создание обратного итератора
  30. Проверка однородности элементов списка
  31. Игра «Камень, ножницы, бумага» — Python
  32. Класс-оболочка для словарей
  33. Сравнение строк в Python
  34. Метод join() для объединения строк
  35. List Comprehension Tutorial
  36. Генератор надежных паролей
  37. Использование эмодзи в Python
  38. Управление памятью в numpy.
  39. Переменные в Python
  40. Работа с контекстным менеджером Pool
  41. Объединение объектов в Python
  42. Конструктор в Python
  43. Деление в Python
  44. Переопределение метода len
  45. Удаление первого элемента списка

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