IPython:保护 shell 调用中的 {} 括号

标签 ipython

我一直在研究 IPython 及其执行以 ! 为前缀的 shell 命令的能力。我遇到了一个问题,可以通过以下示例来说明:

In [1]: filename="mytxtfile.txt"

In [2]: !echo $filename
mytxtfile.txt

In [3]: !echo ${filename}.bak
.txt.bak

In [4]: !echo ${filename}
.txt

我的印象是,将 python 变量的名称包装在 {...} 中可以让我在其中添加一些内容,而中间没有空格。附加本身可以工作,但显然 ${filename} 与 IPython 中的 $filename 不同

为什么会这样以及如何在 shell 调用期间将某些内容附加到 python 变量的值?

最佳答案

我发现我的错误:保护{...}前面没有$

In [5]: !echo {filename}.bak
mytxtfile.txt.bak

引用:http://ipython.org/ipython-doc/stable/interactive/reference.html#manual-capture-of-command-output

关于IPython:保护 shell 调用中的 {} 括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16872673/

相关文章:

python - QApplication实例导致python shell运行缓慢

python - 如何在 IPython notebook 中显示包函数的源代码

python - iPython 文件路径自动补全

apache-spark - PySpark错误:AttributeError:'NoneType'对象没有属性'_jvm'

python - 如何将文本文件 (.py) 加载/编辑/运行/保存到 IPython 笔记本单元格中?

python - 如何让 Ipython 在元素后输出一个没有换行符的列表?

ipython - 如何恢复内核崩溃后清空的笔记本?

python - 在 Windows 上的 Emacs 中运行 Python

python - 使用 IPython Notebook Web 界面移动 .ipynb

python - atom.io、hydrogen 和 ipython 远程 (ssh) 内核