Запустите отладчик Python, одновременно выполняя модуль как скрипт
При разработке пакета Pythonочень удобно использовать-m
возможность запуска модулей внутри пакета в виде скриптов для быстрого тестирования. Например, дляsomepackage
с модулемsomemodule.py
внутри него, ссылаясь
python -m somepackage.somemodule
из каталога, гдеsomepackage
проживает будет работатьsomemodule.py
как будто субмодуль__main__
, Использование этого синтаксиса вызова особенно важно, если пакет использует явный относительный импорт, как описаноВот.
Точно так же удобно использовать-m
возможность отладки скрипта, как в
python -m pdb somescript.py
Есть ли способ сделать оба одновременно? То есть можно ли вызвать модуль, как если бы это был скрипт, и одновременно запустить его в отладчике? Я понимаю, что могу зайти в сам код и вставитьimport pdb; pdb.set_trace()
где я хочу сломаться, но яЯ пытаюсь избежать этого.