Курс 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. Счетчик в Python: most_common()
  2. Отслеживание прогресса с tqdm
  3. Создание вкладок с TKinter
  4. Замена элементов в списке с помощью генераторов списков
  5. Выражения-генераторы в Python
  6. Создание уникального проекта
  7. Генераторы словарей и множеств
  8. Метод radd для пользовательских чисел
  9. Безопасный доступ к значениям словаря
  10. Функциональное программирование.
  11. Метод __iand__ для пользовательских классов
  12. Изменение переменной в Python: nonlocal
  13. Форматирование данных с помощью pprint
  14. Преобразование типов данных в set comprehension
  15. Обработка ошибки IndexError
  16. Участие в сообществе @selectel
  17. Оператор del в Python
  18. Функции с необязательными аргументами
  19. Переменные в Python
  20. Модуль itertools: эффективная работа с итераторами
  21. Изменение элемента списка
  22. Пустой оператор pass в Python
  23. Значения по умолчанию в Python
  24. Изменение объектов в Python
  25. Объединение списков в Python.
  26. Срез в Python
  27. Применение промокода в Много лосося
  28. Определение имен функций
  29. Хешируемые ключи в Python
  30. Метод setitem в Python
  31. Непрерывная проверка в Python
  32. Декораторы с аргументами в Python
  33. Модуль subprocess: запуск внешних команд
  34. Работа с многоуровневыми словарями в Python
  35. Непрерывная проверка в Python
  36. Работа с байтовыми строками в Python
  37. Метод rename() для переименования файлов и каталогов
  38. Принципы программирования
  39. Сохранение Unicode в JSON
  40. Проверка на палиндром
  41. Работа с кортежами в Python
  42. Работа с библиотекой xkcd
  43. Освобождение памяти в Python
  44. Форматирование строк в Python.
  45. Разделение строки на пары ключ-значение.
  46. Генераторы в Python
  47. Работа с прокси в Python
  48. Поиск самого длинного слова в списке с использованием max()

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