IPython | Unix命令不在脚本中工作,但在命令行解释器中工作

时间:2014-02-18 08:28:02

标签: ipython

当我将它们放在test.py并运行它时,下面的行,给我错误,但是当我从命令行运行它们时运行正常。

pyvar = 'Hello world'
!echo "A python variable: {pyvar}"

jitu@jitu-PC:~/ipython/python$ ipython test.py 
 File "/home/jitu/ipython/python/test.py", line 2
 !echo "A python variable: {pyvar}"
 ^
 SyntaxError: invalid syntax

知道它为什么不起作用?

1 个答案:

答案 0 :(得分:3)

.py文件是python脚本,它们应该是纯python,IPython不会尝试对它做一些“魔术”。如果要在纯python语法之上使用IPython提供的语法糖,则应将脚本重命名为.ipy

请注意,所有IPython语法糖都可以转换为纯python(cf %hist vs %hist -t),这将是有效的python语法,但仍需要访问IPython实例。