如何在iPython笔记本中设置默认启动命令?

时间:2015-02-06 10:48:27

标签: ipython-notebook jupyter-notebook ipython-magic

我希望在我创建的每个新笔记本中几乎每个新笔记本中都添加几个单元格。

例如,当我创建一个新的笔记本时,它应该放一个

%matplotlib inline
import matplotlib.pyplot as plt
默认情况下在单元格中

但不执行它。 我怎么能设置这样的东西?

2 个答案:

答案 0 :(得分:3)

要在默认启动时定义命令集,您需要在〜/ .ipython 目录中的模板 ipy_user_conf.py 文件中添加命令。
在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

我希望这是你想知道的。

答案 1 :(得分:2)

这将同时适用于基于终端的IPython Shell和基于浏览器的Notebook:

  • 导航到~/.ipython/profile_default
  • 创建一个名为startup的文件夹(如果尚未存在)
  • 添加名为start.py的新Python文件
  • 在文件中放入您喜欢的imports(可能是custom functions
  • 启动IPython或Jupyter笔记本,您喜欢的库每次都会自动加载!

这是我对start.py的示例: enter image description here

Another Source