在 Jupyter Lab 中更改目录不起作用

Change directory in Jupyter Lab not working

我 运行 在我的命令行中附加了下面的命令,它可以正常工作,但在 JupyterLab 中不行。这看起来很奇怪,但我想知道发生了什么事?

!cd datasets 命令确实有效。但是,您不了解感叹号的使用是怎么回事。感叹号的作用是打开一个单独的临时 shell 实例,并返回返回的内容。单独的 shell 实例消失了。

您试图做的是更改笔记本中的工作目录。所以你想使用:

%cd dataset

您将想要了解许多 IPython/ Jupyter 魔术命令并使用它们。请参阅 here for the IPython ones that Jupyter inherits as Jupyter grew out of the IPython notebook project and so when using a Python-based kernel, you have those utilities. There are some others that are cell and line specific and specific to Jupyter. Here 看起来不错的概述。

请注意,通常在现代 Jupyter 中,默认情况下会启用 auto-magics。对于您在 post 中显示的所有 shell 命令,您想使用魔术命令等价物。因此,您最好先尝试不使用 任何符号 。 Auto-magics 通常会在幕后添加 %。如果失败,然后添加 % 如果你确定有一个与 shell 命令相同的魔术等价物,因为默认情况下你所在的系统上可能没有启用 automagics。最后,您在 shell 中执行的一些类似任务与 IPython/Jupyter 中的魔术命令具有不同的语法。我想到了 %store 行魔术的例子。它的不同是有道理的,因为它所做的主要事情与 shell 不同。但是,与 shell 的能力存在重叠。例如 %store foo >a.txt 允许您将 Python 变量的值直接发送到文本文件中。 (请注意,它不允许在重定向符号后使用 space!与 shell 不同。)