Запись в блокнот Jupyter от Python - PullRequest
0 голосов
/ 03 октября 2019

Можно ли записать скрипт Python в записную книжку iPython?

with open("my_notebook.ipynb", "w") as jup:
     jup.write("print(\"Hello there!\")")

Если для этого есть какой-то пакет, могу ли я также контролировать способ разделения ячеек в записной книжке?

Я разрабатываю программный инструмент (который выполняет некоторую оптимизацию) для подготовки записной книжки iPython, которую можно запустить на каком-либо сервере, выполняющем научные вычисления.

Я понимаю, что связанное решение - это вывод наСценарий Python и загрузите его в iPython Notebook, используя %load my_python_script.py. Тем не менее, это требует, чтобы пользователь набирал то, чего я в идеале хотел бы избежать.

1 Ответ

1 голос
/ 03 октября 2019

Посмотрите nbformat репо на Github. Ссылочная реализация показана там.

Из своих документов

Файлы записных книжек Jupyter (né IPython) - это простые документы JSON, содержащие текст, исходный код, вывод мультимедиа и метаданные. Каждый сегмент документа хранится в ячейке.

Звучит так, будто вы хотите создать записную книжку программно, поэтому вам следует использовать объект NotebookNode.

Для кода, что-то вроде, должно получить вам то, что вам нужно. new_cell_code следует использовать, если у вас есть ячейки кода, а не только ячейки простого текста. Текстовые ячейки должны использовать существующее форматирование уценки.

import nbformat

notebook = nbformat.v4.new_notebook()


text = """Hello There """



notebook['cells'] = [nbformat.v4.new_markdown_cell(text)]
notebook= nbformat.v4.new_notebook()
nbformat.write(notebook,'filename.ipynb')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...