Сеня рядом и Белла пришел. Былое
3 инструмента для отслеживания и визуализации выполнения кода на Python
Источник: Nuances of Programming Для чего нужны новые инструменты? Видели когда-нибудь такой вывод ошибок? 2 divided by 1 is equal to 2.0.
Traceback (most recent call last):
File "loguru_example.py", line 17, in <module>
divide_numbers(num_list)
File "loguru_example.py", line 11, in divide_numbers
res = division(num1, num2)
File "loguru_example.py", line 5, in division
return num1/num2
ZeroDivisionError: division by zero А хотели бы, чтобы вывод был немного более понятным и наглядным?...
🖥 snoop : Интеллектуальная печать для отладки вашей функции Python Если вы хотите понять, что происходит в вашем коде, без использования множества операторов print, попробуйте использовать snoop. Вы увидите журнал работы вашей функции, включая то, какие строки выполнялись и когда, и что происходит с каждой из переменных. Чтобы использовать библиотеку, просто добавьте декоратор @snoop в свою функцию. import snoop @snoop def factorial(x: int): if x == 1: return 1 else: return (x * factorial(x-1)) if __name__ == '__main__': num = 2 print(f'The factorial of {num} is {factorial(num)}') 🖥 Github @machinelearning