Получить текущее имя записной книжки jupyter-lab [для Jupyter-lab версии 2.1 и notebook bersion 6.0) - PullRequest
0 голосов
/ 09 июля 2020

Проблема

Привет всем,

Как подсказывает мой заголовок, я хотел бы получить доступ к имени записной книжки (в jupyter-lab ) как переменной . Так что я мог бы повторно использовать его в самом блокноте (например, чтобы назвать некоторые файлы рисунков, сгенерированные в блокноте).

Я видел, что аналогичная проблема была открыта лет go [см. Здесь] . Однако я не нашел удовлетворительного ответа.

Мне нравится простота ответа, предложенного @ bill :

import ipyparams
currentNotebook = ipyparams.notebook_name

Однако это не так. работать на меня. Я получил это предупреждение в первый раз, когда выполняю первую ячейку:

import ipyparams
Javascript Error: Jupyter is not defined
currentNotebook = ipyparams.notebook_name
currentNotebook
   ''

Затем, если я снова запускаю ячейку, у меня больше не будет предупреждающего сообщения, кроме переменной currentNotebook все еще пусто. (Я запускаю ячейку последовательно, я не выполнял «Запуск всех ячеек»).

Детали конфигурации

Моя версия Jupyter:

jupyter notebook --version                                                                            
6.0.3]

jupyter-lab --version                                                                                 
2.1.1

Я использую мой ноутбук в основном для кода python.

1 Ответ

0 голосов
/ 13 июля 2020

Вам нужно поместить код импорта в отдельную ячейку над функцией (ipyparams.notebook_name). В противном случае он попытается запустить код до полной загрузки библиотеки, поэтому переменная currentNotebook все еще пуста. Помещение импорта в его собственную ячейку заставляет его загружаться перед перемещением в ячейку №2.

...