Хорошая идея изменить Python для принятия оператора continue в интерактивном режиме? - PullRequest
1 голос
/ 29 декабря 2010

в качестве альтернативы использованию pdb , я мог бы использовать оператор Python continue в интерактивном режиме после control-C во время вызова сценария с python -i. таким образом, скажем, в приглашении raw_input('continue->') в моем сценарии, я мог бы отключиться, проверить / изменить вещи и вернуться обратно к приглашению raw_input (или к любому коду, вызвавшему исключение) с помощью команды continue. Команда break вне цикла также может быть изменена для симметрии, но я бы использовал ее меньше. прежде чем отправлять PEP для этого, я хотел бы получить отзывы от сообщества Python.

возможно сделать что-то подобное, просто используя скрипт PYTHONSTARTUP и модуль inspect, но если это так, я еще не понял этого.

1 Ответ

3 голосов
/ 29 декабря 2010

Ctrl-C вызвал исключение KeyboardInterrupt в вашем скрипте. Так как вы не поймали это исключение, программа закрылась. Только тогда появляется интерактивная подсказка.

Вы не можете продолжить, потому что ваша программа уже закончена. Тот факт, что вы нажали Ctrl-C только что вызвал исключение, программа не сделала пауза в этом месте. Он продолжил выполнение до последней строки и закончил.

Нет способа узнать, где ты хочешь продолжать. Для этого вам нужен настоящий отладчик.

...