Как да отстранявате грешки като професионалист с Python

Отстранете грешки в кода си с уеб интерфейса на Debugger

Резюме

Обичате ли да пишете код, но мразите, когато се срива? Тогава ще харесате този инструмент, който прави отстраняването на грешки забавно.

Отстраняване на грешки е процес на откриване и премахване на съществуващи и потенциални грешки („бъгове“) в софтуерен код, които могат да доведат до неочаквано поведение или срив. Това е неприятно за програмистите от 1940 г., когато Грейс Хопър, работеща върху компютър Mark II в Харвардския университет, открива молец, заседнал в реле, което пречи на работата (оттук и терминът „дебъгване“ на системата)“. Дори преди това, «Томас Едисон използва този термин, за да опише механични неизправности в хардуерното инженерство.

Чрез този урок ще покажа какъв инструмент използвам за отстраняване на грешки в кода на Python.

Дебъгерът на Python

Първо, ще създам скрипт, който да използвам като пример:

class Model():
    def __init__(self, x1, x2):
        self.x1 = x1
        self.x2 = x2
    def calculation(self):
        self.sum = self.x1 + self.x2
        return self.x1 * self.x2
    def result(self):
        prod = self.calculation()
        res = self.sum + prod
        return res
if __name__ == "__main__":
    m = Model(x1=3, x2=5)
    print(m.result())

Ако бъде изпълнен, този скрипт ще отпечата „23“ на вашия терминал. Ами ако искаме да видим как входовете се използват и трансформират в процеса? Нека да го отстраним...

Python има вграден инструмент за отстраняване на грешки: pdb. Просто трябва да импортираме пакета и да зададем проследяване, за да задействаме сесията за отстраняване на грешки, където искаме.

Това автоматично ще влезе в постмортално отстраняване на грешки, ако програмата, която се отстранява, излезе необичайно. Отстраняването на грешки след смъртта включва проверка на състоянието на дадено приложение, което се е сбило, за да се определят условията, довели до повредата. След като излезете от програмата, pdb ще рестартира програмата.

Полезно, нали? Пакетът web_pdb е дори по-добър: той предоставя уеб интерфейс за вградения в Python pdb дебъгер.

Това ще стартира уеб приложение на вашия localhost:5555, където не само можете да отстраните грешки във всички изчисления, но също така показва глобалните и локалните променливи (от дясната страна).

Това е готин начин да направите такова скучно нещо като отстраняване на грешки във вашия код (или дори по-лошо … код на някой друг)!

Надявам се да ви е харесало! Чувствайте се свободни да се свържете с мен за въпроси и обратна връзка или просто да споделите вашите интересни проекти.

LinkedIn | Инстаграм | Туитър | GitHub