# `IPython`

IPython: tools for interactive and parallel computing in Python.

http://ipython.org

## 3 Functions

`IPython.``embed_kernel`(module=None, local_ns=None, **kwargs)

  Embed and start an IPython kernel in a given scope.

  If you don’t want the kernel to initialize the namespace from the scope of the surrounding function, and/or you want to load full IPython configuration, you probably want IPython.start_kernel() instead.

  Parameters:

  module : ModuleType, optional

  > The module to load into IPython globals (default: caller)

  local_ns : dict, optional

  > The namespace to load into IPython user namespace (default: caller)

  kwargs : various, optional

  > Further keyword args are relayed to the IPKernelApp constructor, allowing configuration of the Kernel. Will only have an effect on the first embed_kernel call for a given process.

`IPython.``start_ipython`(argv=None, **kwargs)

  Launch a normal IPython instance (as opposed to embedded)

  IPython.embed() puts a shell in a particular calling scope, such as a function or method for debugging purposes, which is often not desirable.

  start_ipython() does full, regular IPython initialization, including loading startup files, configuration, etc. much of which is skipped by embed().

  This is a public API method, and will survive implementation changes.

  Parameters:

  argv : list or None, optional

  > If unspecified or None, IPython will parse command-line options from sys.argv. To prevent any command-line parsing, pass an empty list: argv=[].

  user_ns : dict, optional

  > specify this dictionary to initialize the IPython user namespace with particular values.

  kwargs : various, optional

  > Any other kwargs will be passed to the Application constructor, such as config.

`IPython.``start_kernel`(argv=None, **kwargs)

  Launch a normal IPython kernel instance (as opposed to embedded)

  IPython.embed_kernel() puts a shell in a particular calling scope, such as a function or method for debugging purposes, which is often not desirable.

  start_kernel() does full, regular IPython initialization, including loading startup files, configuration, etc. much of which is skipped by embed().

  Parameters:

  argv : list or None, optional

  > If unspecified or None, IPython will parse command-line options from sys.argv. To prevent any command-line parsing, pass an empty list: argv=[].

  user_ns : dict, optional

  > specify this dictionary to initialize the IPython user namespace with particular values.

  kwargs : various, optional

  > Any other kwargs will be passed to the Application constructor, such as config.