首页 > 解决方案 > 获取当前的 jupyter-lab 笔记本名称 [适用于 Jupyter-lab 版本 2.1 和 3.0.1 以及笔记本版本 >6.0.3)

问题描述

问题

大家好,

正如我的标题所暗示的那样,我想访问笔记本名称(在jupyter-lab中)作为变量。所以我可以在笔记本本身中重用它(例如命名笔记本中生成的一些图形文件)。

我看到几年前就有一个类似的问题[see here]。但是我没有找到满意的答案。

我喜欢@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代码。


编辑 27/01/2021

@juan 解决方案 [这里],使用ipynbname正在为

jupyter-notebook : 6.1.6
jupyter lab : 2.2.6

但这个解决方案仍然不起作用jupyter lab : 3.0.1


编辑 28/01/2021

ipynbname现在为 jupyter 3 工作

关于它的更多细节[这里]

标签: pythonjupyter-notebookjupyterjupyter-lab

解决方案


作为替代方案,您可以使用以下库:ipynbname

#! pip install ipynbname

import ipynbname
nb_fname = ipynbname.name()
nb_path = ipynbname.path()

这对我有用,解决方案非常简单。


推荐阅读