Python

Учебное пособие по Python Traceback

Учебное пособие по Python Traceback
Как только исключение создается при выполнении кода, Python отображает трассировку. Трассировка кажется отчетом на Python, который включает вызовы функций, сделанные в определенном месте кода, i.е., если у вас есть ошибка, рекомендуется отбросить ее назад (трассировка). Трассировка может предоставить подробную информацию о том, что произошло с кодом, если код получает ошибку. Такие трассировки могут показаться немного утомительными, но они могут быть действительно полезными, пока вы не разберете их и не увидите, чему он пытается вас научить. В трассировке Python содержится много данных, которые помогут вам проанализировать и исправить причину проблемы, возникающей в вашем коде.

Интерпретируйте обратную связь:

Просмотр некоторых трассировок может дать лучшую интерпретацию знаний, которые они предоставляют, чтобы вы могли что-то из этого извлечь. Давайте посмотрим на интерпретацию того, как базовое исключение может быть отслежено. Вот пример простого кода, генерирующего ошибку трассировки при выполнении Spyder (Python 3).

Ниже приведено изображение с отслеживанием ошибок. Первая строка показывает расположение файла. Вот некоторые спецификации для всех линий, использующих цвета.

Белый: Traceback (последний вызов последним) - это оператор трассировки. С другой стороны, белая часть последней строки показывает соответствующую информацию об ошибке.

Зеленый: При сообщении имени файла и его местоположения возникает ошибка.

Синий: Показывает номер строки файла, в котором произошла ошибка.

Желтый: Отображает фактическую строку, в которой возникло исключение.

Красный: Тип ошибки.

Вот несколько важных ошибок в трассировке:

NameError
IndexError
KeyError
TypeError
valueError
ImportError / ModuleNotFound

Ошибка имени:
Всякий раз, когда вы хотите интерпретировать переменную, которая не была указана в коде, появляется NameError. Вот простой пример трассировки NameError. У нас есть переменная 'номер' определено с некоторым значением, а в Распечатать заявление, мы распечатали 'онемевший', который не определен нигде в коде. Запустим этот код и проверим, что происходит.

Вы можете видеть, что произошла трассировка NameError, поскольку мы не определили переменную numb, поэтому как ее можно распечатать. Вот почему эта программа показывает ошибку NameError и дополняет ее дополнительной информацией в последней строке с белым и красным текстом. Желтый текст показывает точный код ошибки.

Ошибка индекса:

Ошибка IndexError возникает, когда в коде определена недоступная серия. Мы определили список названный 'новый' имея 5 индексов с некоторыми ценностями в нем. После этого мы должны указать команду печати для вывода значения в индекс номер 9.

Когда мы выполняем этот код, он сгенерирует IndexError, определяющий индекс вне допустимого диапазона. Поскольку мы определили список из 5 индексов, поэтому напечатанный номер индекса, равный 9, недоступен, потому что он не входит в наш диапазон.

Ключевая ошибка:

Python генерирует ключевую ошибку, когда вы пытаетесь достичь ключ который не определен или нанесены на карту, особенно с Словарь. Это больше похоже на IndexError. Итак, давайте посмотрим на простой пример словаря с именем 'случайный' с двумя определенными в нем ключами с некоторыми значениями, присвоенными этим ключам. В следующей строке мы напечатали ключ с именем 'А' в заявлении о печати.

ой! У нас есть трассировка KeyError. Это связано с неправильным ключом, указанным в операторе печати, который не определен в словаре. Можно сделать ошибку, указав заглавную буквенную клавишу, в то время как в словаре определена строчная буквенная клавиша.

Тип ошибки:

TypeError определяется как исключение, которое возникает, когда некоторая операция или метод размазаны по неподходящий тип объекта или переменной. У нас есть пример простой переменной, принимающей два значения, в то время как эта строка добавляет оба значения. Первое значение - это строковый тип, а второе - целочисленный тип. Оператор печати печатает результат добавления.

Когда этот код выполняется, возникает исключение. Это исключение связано с неправильным типом объединяемого объекта. Уточняется, что вы не можете добавить переменную строкового типа с переменной целочисленного типа.

Ошибка значения:

Ошибка значения определяется как исключение, которое возникает только тогда, когда некоторые встроенный метод берет аргумент правильного типа но Неверное значение в этом. Давайте посмотрим на небольшой пример. Мы берем встроенный метод int () с некоторым строковым значением в операторе печати.

Когда вы выполняете этот однострочный код, он генерирует ValueError, потому что мы используем функцию целочисленного типа, давая ей строковое значение для выполнения. Вот почему он покажет, что функция int () имеет недопустимое значение в нем.

С другой стороны, если вы дадите ему дробное значение, оно преобразует его в целое число.

Этот код выводит 11, потому что он принимает только целую часть, а десятичная часть полностью игнорируется.

Ошибка импорта / модуль не найден:

Иногда вам нужно Импортировать некоторые пакеты или модули в вашем коде Python, чтобы использовать через них специальные функции. Вы найдете трассировку ImportError, когда в коде содержится некоторая ошибка в отношении оператора Import. Эта ошибка трассировки возникает, когда вы не в состоянии к найти конкретный модуль или что-то из пакета. Здесь мы импортировали два модуля, 'пип' а также 'Ява', в нашем коде.

При выполнении этого кода будет выполнена трассировка ModuleNotFoundError. Это связано с тем, что импортированный модуль java не поддерживается библиотекой python. С другой стороны, он не создает исключения при импорте модуля pip, потому что это модуль, поддерживаемый Python.

Заключение:

Трассировка Python предоставляет отличные знания, которые помогут вам выяснить, что идет не так в коде. Независимо от того, делаете ли вы это впервые или просто не понимаете, что делает, генерация трассировки может быть немного сложной. Чтобы стать более сильным программистом на Python, важно знать, какие детали дает трассировка Python.

Обзор беспроводной мыши Microsoft Sculpt Touch
Я недавно прочитал о Microsoft Sculpt Touch беспроводная мышь и решил ее купить. Побывав некоторое время, я решил поделиться своим опытом с ним. Эта б...
Экранный трекпад и указатель мыши AppyMouse для планшетов с Windows
Пользователи планшетов часто пропускают указатель мыши, особенно когда они привыкли пользоваться ноутбуками. Смартфоны и планшеты с сенсорным экраном ...
Средняя кнопка мыши не работает в Windows 10
В средняя кнопка мыши помогает пролистывать длинные веб-страницы и экраны с большим объемом данных. Если это прекратится, вы в конечном итоге будете и...