Viztracer визуализирует и отслеживает код Python, чтобы дать большее понимание того, как работает код.
Сложно понять ваш проект Python, поскольку он становится все больше и сложнее. Даже когда вы пишете весь проект, невозможно узнать, как он работает полностью. Отладка и профилирование вашего кода необходима для лучшего понимания его.
Viztracer это инструмент, который поможет вам понять код Python путем отслеживания и визуализации его выполнения. Не внося никаких изменений в ваш исходный код, Viztracer может регистрировать записи/выходы функции, аргументы/возвраты функций и любые произвольные переменные, а затем отображать данные, используя интуитивно понятный фронт-конечный Google Трассировка-провилер Анкет
Вот пример запуска Поиск дерева Монте -Карло :
Каждая функция регистрируется и визуализируется в стиле стека на временной шкале, чтобы вы могли видеть, что происходит при запуске программы. Вы можете масштабировать, чтобы увидеть детали в любом конкретном моменте:
Viztracer также может автоматически регистрировать аргументы функции и возвращаемого значения; Вы можете нажать на запись функции и увидеть информацию о деталях:
Или вы можете создать совершенно новый сигнал и использовать его для регистрации переменных. Например, это показывает ценность стоимости, когда вы делаете градиентный спуск:
В отличие от других инструментов со сложными настройками, Viztracer очень легкий для использования и не имеет никаких зависимостей. Вы можете установить его из PIP с:
**pip install viztracer**
И проследить свою программу, введя (где название вашего сценария):
**viztracer**
Viztracer генерирует отчет HTML в вашем рабочем каталоге, который вы можете открыть в Chrome.
Viztracer предлагает другие расширенные функции, такие как фильтры, которые вы можете использовать для фильтрации функций, которые вы не хотите отслеживать, чтобы у вас был более чистый отчет. Например, чтобы включить только функции в файлы, вы заинтересованы в:
**viztracer include_files ./ --run**
Чтобы записать аргументы функции и возвращаемое значение:
**viztracer --log_function_args --log_return_value**
Для регистрации любых произвольных переменных, соответствующих определенной регуляции:
***# log variables starts with a* viztracer --log_var a.* --run**
Вы можете получить другие функции, такие как пользовательские события для регистрации цифровых значений и объектов, внося незначительные изменения в ваш исходный код.
Viztracer также включает в себя виртуальную отладку (VDB), который может отлаживать файл журнала Viztracer. VDB отлаживает ваш выполненный код (очень похоже на pdb ) чтобы вы могли понять поток кода. Полезно, он поддерживает бег назад во времени, потому что знает все, что произошло.
В отличие от некоторых прототипов, Viztracer реализует его ядро в Pure C, что значительно снижает накладные расходы до уровня, аналогичного Cprofile .
Viztracer открыт исходный код, выпущенный по лицензии Apache 2.0, и поддерживает все общие платформы операционных систем (Linux, MacOS и Windows). Вы можете узнать больше о его функциях и получить доступ к его исходному коду на GitHub Анкет
Ссылки на ссылки:
Если вы хотите изучать больше Python, вам может быть интересно:
Получите книгу : Узнайте книгу Python PDF
Другие посты разработчиков:
Создание мощного сериализатора с веб -структурой Django Python
Портативная среда DevOps в Docker для гениальных разработчиков
Секрет управления несколькими средами GO называется GVM
Мощное приложение для дел в Flask Python Web Framework менее чем за 30 минут
Оригинал: “https://dev.to/courseprobe/debug-your-python-code-like-a-superstar-with-this-open-source-visualization-tool-424e”