#session #spyder
#сеанс #spyder
Вопрос:
Я использую Spyder в Ubuntu, я подумал, что смогу сохранить интерактивный сеанс IPython, используя опцию «Файл -> Сохранить сеанс и выйти». Итак, например, я определяю некоторые переменные в интерактивной консоли Ipython, например
>>> x = 1
затем я нажимаю и сохраняю сеанс как файл «1.session.tar». Я закрываю и снова открываю Spyder и выбираю «Файл -> Загрузить сеанс», и я выбираю файл сеанса, но когда я открываю консоль IPython, нет такой переменной, которую я определил x = 1
, почему это? Spyder не может сохранить интерактивный сеанс IPython?
Ответ №1:
(Разработчик Spyder здесь) Опция Сохранить сеанс на данный момент сохраняет только ваш список открытых файлов.
Если вы хотите сохранить свой сеанс IPython, вы можете использовать кнопки Сохранить данные или Сохранить данные как в проводнике переменных и сохранить его как .mat
файл (да, тот же формат, что используется Matlab). Затем, когда вы снова запустите Spyder, вам нужно снова загрузить свои данные с помощью кнопки Импортировать данные из проводника переменных.
Вы должны знать, что:
-
Сохраняются не все данные, а только объекты Python, которые можно сериализовать.
-
Мы думаем улучшить ситуацию в будущем, автоматически сохраняя ваши сеансы и используя
dill
библиотеку, которая может сериализовать все.
Комментарии:
1. Спасибо, кстати, если я использую
pickle
, то все объекты могут быть сброшены?2. В этом проблема в первую очередь: мы используем
pickle
для сериализации и дампа объектов вmat
файл, ноpickle
не можем сериализовать все.3. Привет, @Carlos Cordoba! Мне было интересно, работает ли это в последних версиях?
4. @Jaqo, извините, к сожалению, у нас не было времени улучшить ситуацию после этого вопроса.
5. Думаю, было бы нормально, если бы я еще раз спросил, доступна ли эта функция сейчас? 🙂