python - 和有什么区别!和 % 在 Jupyter 笔记本中?

标签 python shell jupyter-notebook

!% 都允许您从 Jupyter notebook 运行 shell 命令。

  • % 提供 by the IPython kernel并允许您运行“魔术命令”,其中许多包括众所周知的 shell 命令。

  • !,由 Jupyter 提供,允许 shell 命令在单元格中运行。

我没能找到 much比较两者,以及简单的 shell 命令,如 cd 等。我看到的主要区别是 % 是交互式的,实际上会改变你在 shell 中的位置 在笔记本中

在考虑将哪个符号用于 Jupyter notebook 中的 shell 命令时,是否还有其他对比点或规则?

最佳答案

! 调用 shell(在新进程中),而 % 影响与笔记本相关的进程(或笔记本本身;许多 % 命令没有对应的 shell。

!cd foo 本身没有持久效果,因为更改目录的进程会立即终止。

%cd foo 更改笔记本进程的当前目录,这是一个持久的效果。

关于python - 和有什么区别!和 % 在 Jupyter 笔记本中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45784499/

相关文章:

linux - 使用 bash 捕获交互式程序的输出和输入

shell - 如何在 shell 脚本中使用 Jenkins 参数

ipython - 显示图像jupyter笔记本对齐的中心

python - 保存 Jupyter 笔记本 session

python - 仅获取一个 MySQL 列作为列表而不是元组

python - 从 pandas 数据框中的句子列表中删除标点符号

java - Tomcat 在从 jenkins 执行 shell 重新启动后停止

python - 使用 Colab 访问本地文件夹

Python 正则表达式在与 re.findall 一起使用时返回匹配的一部分

python - 调整 48 位 PNG 的大小,保留其 48 位,而不将其删除为 24 位文件