如何配置IPython以在每次启动时发出相同的“魔术”命令?

时间:2017-01-10 19:42:47

标签: python python-3.x ipython

每当我从终端拨打%cd "My_Default_Dir"时,我都希望能够使用%matplotlibipython;我试着在.ipython/profile_default/startup/My_File.py的.py文件中写这个,但它不接受魔术命令。

编辑:我不是问如何在启动时在某些.py文件中运行一系列Python命令;我知道该怎么做。我问的是如何在启动时运行魔术命令。目前,如果我在%cd "my_directory"中加入.ipython/profile_default/startup/My_File.py,我会收到以下错误:

[TerminalIPythonApp] WARNING | Unknown error in handling startup files:
  File "/Users/<name>/Dropbox/.ipython/profile_default/startup/startup.py", line 18
    %cd "~/Dropbox/"
    ^
SyntaxError: invalid syntax

2 个答案:

答案 0 :(得分:3)

我只是想阐述韦恩的答案,但没有足够的声誉来发表评论。您可以在启动脚本中包含以下内容,以运行所需的魔术命令

from IPython.core import getipython

getipython.get_ipython().magic(u"%reload_ext autoreload")
getipython.get_ipython().magic(u"%autoreload 2")

此处是模块参考Ipython module

要在终端上运行上述启动程序,

ipython -i startup.py

答案 1 :(得分:2)

您只需要在启动脚本中使用魔术:

get_ipython().magic('cd ~/Dropbox')
get_ipython().magic('matplotlib')

将它放在你的启动脚本的内容中,它应该做你需要的魔法✨✨