ipyton启动脚本语法错误

时间:2016-08-24 22:03:09

标签: ipython startup

我想始终将ipython命令行和输出记录到附加模式的文件中。在.ipython/profile_default/startup README

下阅读文件时
$ cat README 
This is the IPython startup directory

.py and .ipy files in this directory will be run *prior* to any code or files specified
via the exec_lines or exec_files configurables whenever you load this profile.

Files will be run in lexicographical order, so you can control the execution order of files
with a prefix, e.g.::

    00-first.py
    50-middle.py
    99-last.ipy

我尝试添加一个带有以下内容的文件first.py

  logstart -o -r -t logs/ipython.log 'append'

logstart是一个神奇的命令。当我尝试启动ipython时,我遇到了错误

  File "/home/mtk/.ipython/profile_default/startup/00-first.py", line 1
    logstart -o -r -t logs/ipython.log 'append'
                         ^
SyntaxError: invalid syntax

如何解决此问题?

1 个答案:

答案 0 :(得分:1)

" Thomas K"评论也看起来像一个解决方案,但这是我发现自己的不同解决方案

正如他所说的那样,我们只能在启动文件夹中的* .py文件中包含python代码,我用下面的代码替换了我之前的文本。可以使用run_line_magic方法

调用魔术命令
get_ipython().run_line_magic(u"logstart", u"-o -r /home/mt/Dropbox/a/logs/ipython_log.py append")
get_ipython().run_line_magic(u"logstate", "")