Мне нравится проверять ошибку в Python script, используя:
$ python3 -m pdb my_script.py
Это отбрасывает меня в подсказку pdb, откуда я могу c
продолжить выполнение, а когда он попадает в ошибку, я могу проверить переменные, а затем q
завершить выполнение script, чтобы вернуться в свою оболочку.
Я пробовал то же самое с модулем отладчика iPython, так как он более яркий:
$ python3 -m ipdb my_script.py
Тем не менее, я не могу выйти из отладчика, как только закончу проверку ошибки. Использование команды q
quit просто переключает ее между повторным выполнением режима script и post-mortem:
$ python3 -m ipdb my_script.py
ipdb> c
Uncaught exception. Entering post mortem debugging
Running 'cont' or 'step' will restart the program
ipdb> Inspect some variables at this point
ipdb> q
Post mortem debugger finished. The my_script.py will be restarted
ipdb> q
Uncaught exception. Entering post mortem debugging
Running 'cont' or 'step' will restart the program
ipdb> q
Post mortem debugger finished. The my_script.py will be restarted
ipdb> q
Uncaught exception. Entering post mortem debugging
Running 'cont' or 'step' will restart the program
ipdb> q
Post mortem debugger finished. The my_script.py will be restarted
ipdb> q
Uncaught exception. Entering post mortem debugging
Running 'cont' or 'step' will restart the program
Как выйти из этого отладчика?