如何在 IPython 魔术命令后添加评论

Tom*_*ale 6 ipython ipython-magic jupyter-notebook

如何在IPython 魔术命令的末尾添加注释?

例如,尝试使用%cd

%cd "dir"  # comment
Run Code Online (Sandbox Code Playgroud)

我想更改为目录,dir但我得到:

[Errno 2] No such file or directory: 'dir # comment'
Run Code Online (Sandbox Code Playgroud)

ntg*_*ntg -1

TL;DR:就目前情况而言,你不能。这可能是也可能不是 的实现中的错误%cd

在解决此问题之前,避免此问题的一种方法是使用:

import os
os.chdir("dir") #some comment here
Run Code Online (Sandbox Code Playgroud)

第二种选择是使用 bash 命令。然而这%是一个神奇的命令,并不等同于 bash 命令。这是故意的,因为它可以更改笔记本的当前目录

这与例如不一样

!cd dir #some comment here
Run Code Online (Sandbox Code Playgroud)

这将生成一个 shell 并在那里执行命令,因此不会更改当前目录。(您可以pwd在每个命令之前/之后使用进行验证)

请注意,如果您的目标不是更改当前的 jupyter 笔记本目录,您可以使用 magic 在一个单元格中发出多个命令 %sh

%%sh 
cd dir #some comment here
ls #some more commands here
....
Run Code Online (Sandbox Code Playgroud)

该命令将生成一个 shell,并且所有 bash 命令都将在其中执行,因此当前的 jupyter 目录不会更改。