Как настроить 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

0 ответов

Другие вопросы по тегам