Как настроить Ipython для автоматического возврата обратно в каталог, в котором он был открыт после запуска скрипта, даже если скрипт вышел из строя
Конечная цель: после запуска сценария независимо от того, завершился ли он правильно или произошел сбой, я бы хотел, чтобы моя среда ipython вернулась обратно в каталог, в котором она находилась до запуска сценария.
Я успешно воспользовался советом, данным в сообщении SO,
как-д-я-изменение-каталог встречно -мой-оригинал-рабочего каталог-с-питоном.
Это прекрасно работает, если скрипт работает без сбоев.
Идеи:
1) Я подумал об упаковке моего кода в один большой try:
а также except:
используя совет в посте, упомянутом выше. Так как это наверняка решит проблему. Тем не менее, кажется утомительным и ненужным вписывать это во все мои сценарии.
2) Я подумал, что хорошим решением было бы, чтобы ipython автоматически запускал скрипт "revert directory" после каждого запускаемого пользователем скрипта, который изменил бы каталог на исходный. Я немного осмотрелся, чтобы увидеть, как можно настроить ipython для автоматического запуска скрипта после каждого запуска. Из моих поисков до сих пор я не нашел, что это вариант. Я ожидал найти способ сделать это через конфигурационный файл ipython.
3) Другое решение, которое было бы простым, было бы как-то использовать найденную информацию с помощью команды line magic. %dhist
, Первым результатом этой команды является исходный каталог, в котором был открыт ipython. Однако, кроме печати результатов выполнения команды %dhist
... Я не уверен, как работать с печатной информацией.
4) Я, должно быть, не ищу правильных терминов, поскольку я чувствую, что это, вероятно, что-то, что возможно или было задано. Если действительно кто-то спросил это, пожалуйста, укажите мне правильное направление, и я быстро удалю этот вопрос.
Релевантная информация:
Работает на ос х
Использование Jupyter QtConsole 4.3.1
IPython 6.2.1