Skip to main content

Background ZMQ IPython/Jupyter kernel

Project description

Run some IPython ZMQ kernel in the background, without an interactive shell. You can connect to that kernel remotely via ZMQ.

Installation (package is on PyPI):

pip install background_zmq_ipython

Usage:

import background_zmq_ipython
background_zmq_ipython.init_ipython_kernel()

The kernel will then run in the background in its own thread. The init will print some message similar to this on stdout:

To connect another client to this IPython kernel, use:
jupyter console --existing kernel-1111.json

Now, after you connected, how to access globals from the main module? E.g. let’s say there is a variable a.

  • sys.modules["__main__"].a should work. Via sys.modules, you can access all the imported modules. Or just do import mod again.

  • Get the stack of all/other frames via sys._current_frames(), and there you can access the globals from other threads as well.

  • You can provide user_ns to init_ipython_kernel, e.g:

    init_ipython_kernel(user_ns=globals())

    or:

    init_ipython_kernel(user_ns={"main_globals": globals()})

    or:

    init_ipython_kernel(user_ns={"a": a})

Alternatives / related links:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

background_zmq_ipython-1.20230717.114829.tar.gz (9.1 kB view details)

Uploaded Source

File details

Details for the file background_zmq_ipython-1.20230717.114829.tar.gz.

File metadata

File hashes

Hashes for background_zmq_ipython-1.20230717.114829.tar.gz
Algorithm Hash digest
SHA256 ea038277c6b3c46e2b96342513ee500321133223f54421533df54493de877825
MD5 adbe324ff70aee27ea392740349fc2a7
BLAKE2b-256 100c732aba959755c68ffa5ed64f58fb322d33d2e72f045749273ca79233ee28

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page