如何使用FileContentsManager获取当前root_dir的路径? (Jupyter笔记本)

时间:2017-12-16 15:33:52

标签: python jupyter-notebook jupyter

我知道模块FileContentsManager有root_dir,但是,我不知道如何在运行时创建这个模块的实例并获取当前的root_dir。有什么帮助吗?

2 个答案:

答案 0 :(得分:0)

通过

了解如何做到这一点
def load_jupyter_server_extension(nb_app):
web_app = nb_app.web_app
host_pattern = '.*$'
# here
print("test" + nb_app.notebook_dir)

答案 1 :(得分:0)

获取FileContentsManager的最简单方法是from traitlets.config import Config并运行Config(),但这将只包含默认值,对您毫无用处。下面的代码假设您已经运行jupyter notebook --generate-config来生成jupyter_notebook_config.py,并且已经编辑并取消了对包含c.FileContentsManager.root_dir =的行的注释:

from jupyter_core.paths import jupyter_config_dir
from traitlets.config import Config
import os

c = Config()
file_path = os.path.join(jupyter_config_dir(), 'jupyter_notebook_config.py')
exec(open(file_path).read())
root_dir = c['FileContentsManager']['root_dir']