如何获得Jupyter Notebook的路径?

时间:2018-08-31 16:24:04

标签: python jupyter-notebook jupyter

是否有获取笔记本路径的功能?

我已经对该主题进行了一些Google搜索,但没有找到简单的方法...我想获取Notebook的路径,以便随后将其用于其他地方。这样,我可以在与笔记本相同的路径中保存/使用文件,而不必担心文件的保存位置。

现在,我的解决方案是将以下代码放在最上面,但是显然,这至少带来了手动执行单元格的问题,而且如果工作目录发生了更改,它将停止工作。

import os
current_path = os.getcwd()

5 个答案:

答案 0 :(得分:2)

如果可以打开 您可以使用此功能

1-打开您的Jupyter笔记本 2-编写此功能 3-它将打印出路径

pwd

如果不是 导航到您的python 安装文件夹 打开文件夹脚本,您将在其中找到它。

希望这可能对其他人有帮助

答案 1 :(得分:1)

TLDR:不能

不可能始终如一地获得Jupyter笔记本电脑的使用方法。有关更多信息,请参见ipython issue #10123。我将引用Carreau

  

以下是使用内核(在本例中为IPython)的一些原因:

     
      
  • 可能不是从单个文件运行
  •   
  • 即使一个文件,该文件也可能不是笔记本。
  •   
  • 即使笔记本,笔记本也可能不在文件系统上。
  •   
  • 即使在文件系统上,它也可能不在同一台计算机上。
  •   
  • 即使在同一台机器上,文件的路径在IPython上下文中也可能没有意义。
  •   
  • 即使Jupyter协议并非旨在做到这一点。而且我们没有计划在短期或长期内更改这种抽象。
  •   

您的骇客在大多数情况下都可以使用,并且视情况而定还算不错。

答案 2 :(得分:1)

您可以仅使用“ pwd”来代表打印工作目录。 enter image description here

答案 3 :(得分:0)

结合用户@peng 在 stackoverflow 问题中的回答:

path problem : NameError: name '__file__' is not defined

和用户@russel-dias 在:

Find current directory and file's directory

您可以使用以下命令获取笔记本所在的路径:

os.path.dirname(os.path.realpath("__file__"))

这样ipynb_path = os.path.dirname(os.path.realpath("__file__"))

答案 4 :(得分:-1)

在单元格中使用

%%javascript
IPython.notebook.kernel.execute('nb_name = "' + IPython.notebook.notebook_name + '"')
print(nb_name)