Как сохранить результаты из ноутбука Jupyter? - PullRequest
0 голосов
/ 13 апреля 2020

Как мы знаем, если мы остановим ядро, когда мы снова откроем файл, все выходные данные будут потеряны.

Есть ли способ сохранить их и перезагрузить (возобновить) позже, особенно на другом устройство?

1 Ответ

0 голосов
/ 13 апреля 2020

Если у вас есть объекты в памяти, которые вы пытаетесь сохранить, вы можете посмотреть в Pickle, это часть стандартной библиотеки.

import pickle

# Create a large object
oldObj = [n for n in range(10**3)]
print(len(oldObj), type(oldObj))
# <class 'list'> 1000

# Save to file
with open('myFile.pkl', 'wb') as file:
    pickle.dump(oldObj, file)

# --- you can send the file to someone else, or stop the kernel

# Load from file
with open('myFile.pkl', 'rb') as file:
    newObj = pickle.load(file)

print(len(newObj), type(newObj))
# <class 'list'> 1000

Это работает практически с любым собственным типом Python, с несколько исключений. Есть еще одна библиотека под названием dill, которая расширяет эту функциональность еще больше (она использует тот же синтаксис)

$ pip install dill

РЕДАКТИРОВАТЬ: Перечитав ваш пост, я не уверен, что вы подразумевается под "выходом". Если вы просто имеете в виду буквальный вывод ячеек, это должно сохраняться до тех пор, пока вы сохраняете записную книжку после выполнения. Вы также можете сохранить записную книжку как документ c, чтобы сохранить его визуальное состояние более надежным способом. Некоторые из распространенных типов экспорта: HTML, PDF и Markdown.

$ jupyter nbconvert --help
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...