如何在iPython笔记本中设置默认启动命令?
问题描述:
我想在我创建的每个新笔记本中的几乎每个新笔记本中都带上几个单元格。如何在iPython笔记本中设置默认启动命令?
例如,当我创建一个新的笔记本,应该把
%matplotlib inline
import matplotlib.pyplot as plt
在默认情况下,细胞但不执行它。 我怎么能设置这样的东西呢?
答
定义设置默认启动的命令,你需要添加的命令在templete ipy_user_conf.py文件在您〜/ .ipython目录。
此模块在IPython启动期间导入。所以,你可以很容易做到:进口模块,配置扩展,更改选项,定义神奇的命令,把变量和函数的命名空间的IPython等
这里是样品ipy_user_conf.py:
# Most of your config files and extensions will probably start
# with this import
import IPython.ipapi
ip = IPython.ipapi.get()
# You probably want to uncomment this if you did %upgrade -nolegacy
# import ipy_defaults
import os
def main():
#ip.dbg.debugmode = True
ip.dbg.debug_stack()
# uncomment if you want to get ipython -p sh behaviour
# without having to use command line switches
import ipy_profile_sh
import jobctrl
# Configure your favourite editor?
# Good idea e.g. for %edit os.path.isfile
#import ipy_editors
# Choose one of these:
#ipy_editors.scite()
#ipy_editors.scite('c:/opt/scite/scite.exe')
#ipy_editors.komodo()
#ipy_editors.idle()
# ... or many others, try 'ipy_editors??' after import to see them
# Or roll your own:
#ipy_editors.install_editor("c:/opt/jed +$line $file")
o = ip.options
# An example on how to set options
#o.autocall = 1
o.system_verbose = 0
#import_all("os sys")
#execf('~/_ipython/ns.py')
# -- prompt
# A different, more compact set of prompts from the default ones, that
# always show your current location in the filesystem:
#o.prompt_in1 = r'\C_LightBlue[\C_LightCyan\Y2\C_LightBlue]\C_Normal\n\C_Green|\#>'
#o.prompt_in2 = r'.\D: '
#o.prompt_out = r'[\#] '
# Try one of these color settings if you can't read the text easily
# autoexec is a list of IPython commands to execute on startup
#o.autoexec.append('%colors LightBG')
#o.autoexec.append('%colors NoColor')
o.autoexec.append('%colors Linux')
# some config helper functions you can use
def import_all(modules):
""" Usage: import_all("os sys") """
for m in modules.split():
ip.ex("from %s import *" % m)
def execf(fname):
""" Execute a file in user namespace """
ip.ex('execfile("%s")' % os.path.expanduser(fname))
main()
有关详细信息,请参考链接:Customization of IPython。
我希望这是你想知道的。
谢谢。虽然你的答案似乎并不完全符合我的要求。链接的文档是针对ipython的一个非常旧的版本,并解释了如何设置启动ipython时执行的命令。然而,我正在寻找的是为每个新创建的笔记本添加自定义初始化单元的方法。这看起来可能相当,但是,例如,如果您想共享笔记本,则不是。 – user9886 2015-02-25 11:27:40