IPython Notebook保存位置

65

我刚开始使用IPython Notebook,尝试使用“保存”来保存我的进度。但是,它不是在我的当前工作目录中保存*.ipynb文件,而是保存在我的python/Scripts文件夹中。是否有一种方法可以进行设置?

谢谢!

9个回答

59

是的,您可以在配置文件中指定笔记本的位置。由于它没有将它们保存到您启动笔记本的目录中,我假设您已经在配置文件中设置了此选项。您可以使用以下命令查找配置文件目录的路径:

$ ipython locate

在您的默认配置文件或使用的配置文件中,编辑 ipython_notebook_config.py 文件并更改以下行:

注意:如果您没有配置文件,或者配置文件夹中不包含 ipython_notebook_config.py 文件,请使用 ipython profile create 命令创建。

# The directory to use for notebooks.
c.NotebookManager.notebook_dir = u'/path/to/your/notebooks'

# The directory to use for notebooks.
c.FileNotebookManager.notebook_dir = u'/path/to/your/notebooks'

如果你想将笔记本保存在当前目录下,可以将它们注释掉。

更新(2014年4月11日): 在IPython 2.0中,配置文件中的属性名称已更改为:

c.NotebookApp.notebook_dir = u'/path/to/your/notebooks'

1
非常感谢你,维克托!还有一个(贪心的)问题 - 你知道我是否可以在笔记本本身动态更改这个文件夹吗?谢谢! - Yuxiang Wang
2
@ShawnWang 我不知道。 :-/ - Viktor Kerkez
1
抱歉一直打扰您...如果我找不到ipython_notebook_config.py文件,有什么想法吗?我在Windows中使用WinPython 2.7 64位版 :) - Yuxiang Wang
2
使用ipython 1.1.0时,默认情况下似乎不会创建ipython_notebook_config.py。https://github.com/ipython/ipython/issues/2974#issuecomment-30431951 因此,只需将ipython_config.py复制到ipython_notebook_config.py,然后继续进行即可。 - calmrat
1
@denfromufa,你已经在ipython_notebook_config.py文件中拥有它了。在文件的顶部,你可以找到:c = get_config() - Viktor Kerkez
显示剩余3条评论

15

如果您使用的是IPython 4.x/Jupyter,请运行

$ jupyter notebook --generate-config

这将在~/.jupyter中创建一个名为jupyter_notebook_config.py的文件。此文件已经有一行以# c.NotebookApp.notebook_dir=u''开头。

你只需要取消注释这一行,并将值更改为所需的位置,例如,c.NotebookApp.notebook_dir=u'/home/alice/my_ipython_notebooks'


8

只需cd到您的工作文件夹,然后启动IPython笔记本服务器。这样您就可以随时随地进行操作。


非常有用。谢谢! - Rashedul Islam

4

补充Victor的回答,我能够在Windows上更改保存目录,方法如下...

c.NotebookApp.notebook_dir = 'C:\\Users\\User\\Folder'

对于我们Windows用户来说,这是一个不错的拉取。谢谢! - Matthew David Jankowski

3
  • 根据我的经验,如果你在其他目录中使用python-2.7.5/Scripts中的"ipython.exe",并在命令提示符中输入 "ipython notebook",*.ipynb文件将被加载和保存在当前目录中。(“notebook”只是一个命令行参数)。我认为WinPython顶级目录下的“ipython notebook.exe”与您的请求无关。对于我来说,我只将ipython.exe目录添加到了Path中。
  • 如果您想在用户目录中创建自己的配置文件,请参见以下链接: https://code.google.com/p/winpython/wiki/Installation#Settings

2
WinPython环境下的Jupyter,在scripts文件夹中有一个批处理文件:
make_working_directory_be_not_winpython.bat

您需要编辑其中的以下行:
echo WINPYWORKDIR = %%HOMEDRIVE%%%%HOMEPATH%%\Documents\WinPython%%WINPYVER%%\Notebooks>>"%winpython_ini%"

Documents\WinPython%%WINPYVER%%\Notebooks 部分替换为您的文件夹地址。
请注意,%%HOMEDRIVE%%%%HOMEPATH%%\ 部分将识别根和用户文件夹(即 C:\Users\your_name\),这将允许您将不同的WinPython安装指向相同的云存储文件夹(例如OneDrive),从而可以在不同的计算机上存储、访问和处理相同的文件。我发现这非常有用。

1
要在Windows中运行,请将此*.bat文件复制到您希望使用的每个目录,并通过执行批处理文件来运行ipython笔记本。这假设您已在Windows中安装了ipython。
set "var=%cd%"
cd var
ipython notebook

1

我尝试了其他解决方案,但在配置中没有找到c.NotebookApp.notebook_dir设置...

#jupyter_notebook_config.json

{
  "NotebookApp": {
    "nbserver_extensions": {
      "jupyter_nbextensions_configurator": true
    }
  }
}

所以,我的做法是:

  • cd 到我想要保存笔记本和检查点的目录中
  • 启动笔记本服务器 jupyter-lab
  • 然后,在一个活动的笔记本单元格中,我更改我的工作目录,以便我的 Python 单元格中的代码可以访问我的其他模块 =)
# ipython cell
import os

# change where notebooks are stored
os.chdir('/Users/me/Project')
os.getcwd()

0

当你在jupyter笔记本文件上完成一组代码的编写并希望将文件上传到你的github账户时,使用这个格式将文件直接下载到计算机本地磁盘

%notebook "directory/to/file/filename.ipynb"

例子:

%notebook "C:\Users\john\Documents\Python Projects/filename.ipynb"

文件会自动保存到您的文件夹中,然后您可以将它们上传到Git账户。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接