Опять кто-то пытается отучить нас использовать print() во время дебага... Автор тула предлагает использовать:
— декораторы @pysnooper.snoop();
— блоки with pysnooper.snoop();
Чтобы в итоге получить такую отладочную информацию, как на приложенном скриншоте. Вот что происходит на нем слева:
— вызывается функция
number_to_bits с аргументом number = 6;— в строках кода функции (справа) видно, что она предназначена для перевода числа в двоичный формат, сохраняя биты в списке
bits;— PySnooper пошагово логирует каждую выполненную строку (слева), время выполнения, а также все изменяющиеся переменные;
— переменная
number последовательно изменяется от 6 до 3, потом до 1, затем до 0 — каждый раз происходит деление с остатком (
divmod(number, 2)), а остаток (remainder) вставляется в начало списка bits;— В итоге возвращается список битов
[1, 1, 0], что соответствует двоичному представлению числа 6.Репозиторий проекта
#инструмент
@zen_of_python