{"id":438,"library":"ipython","title":"IPython: Productive Interactive Computing","description":"IPython is an enhanced interactive Python shell designed for productivity, providing features like dynamic object introspection, system shell access, and rich media display. As of version 9.12.0, it requires Python 3.12 or higher and follows a regular release cadence with frequent updates and improvements.","status":"active","version":"9.12.0","language":"python","source_language":"en","source_url":"https://github.com/ipython/ipython","tags":["interactive shell","Python","productivity","REPL","IPython"],"install":[{"cmd":"pip install ipython","lang":"bash","label":"Install IPython"}],"dependencies":[{"reason":"Provides a simple database for persistent storage of IPython's history and configuration","package":"pickleshare","optional":false}],"imports":[{"note":"Ensure IPython is installed in your environment","symbol":"IPython","correct":"import IPython"}],"quickstart":{"code":"import IPython\nIPython.start_ipython()","lang":"python","description":"Start an IPython session programmatically"},"warnings":[{"fix":"Upgrade your Python installation to version 3.12 or later","message":"IPython 9.12.0 requires Python 3.12 or higher","severity":"breaking","affected_versions":"9.12.0"},{"fix":"Avoid naming your scripts with the same names as standard library modules to prevent import conflicts","message":"Attempting to import modules from the current working directory can lead to import errors due to name conflicts","severity":"gotcha","affected_versions":"All"}],"env_vars":null,"last_verified":"2026-05-12T13:49:20.276Z","next_check":"2026-06-26T00:00:00.000Z","problems":[{"fix":"Install IPython using pip: `pip install ipython`. If you are working within a virtual environment, ensure it is activated before running the install command. If already installed, verify you are using the correct Python executable or virtual environment where IPython is installed.","cause":"IPython is not installed in the currently active Python environment, or the Python interpreter cannot locate it in its sys.path. This often occurs after upgrading Python or when working with virtual environments without correctly installing IPython within them.","error":"ModuleNotFoundError: No module named 'IPython'"},{"fix":"Add the Python `Scripts` (Windows) or `bin` (Linux/macOS) directory to your system's PATH environment variable. Alternatively, you can run IPython by explicitly calling its module: `python -m IPython`.","cause":"The directory containing the `ipython` executable (e.g., `Scripts` on Windows, or `bin` in Linux/macOS Python installations/virtual environments) is not included in your system's PATH environment variable.","error":"ipython: command not found"},{"fix":"Install the missing package directly: `pip install ipython_genutils`. In many cases, installing `jupyter` will also resolve this, as `jupyter` typically pulls in `ipython_genutils` as a dependency: `pip install jupyter`.","cause":"The `ipython_genutils` package, a dependency for older IPython and Jupyter installations, is missing. This often arises when Jupyter or related tools are installed without all necessary sub-dependencies.","error":"ModuleNotFoundError: No module named 'ipython_genutils'"},{"fix":"Ensure `ipython` and `matplotlib` are up to date by running `!pip install --upgrade ipython matplotlib` within a notebook cell. Also, explicitly enable inline plotting with the magic command `%matplotlib inline` at the beginning of your notebook.","cause":"This error typically occurs in Jupyter Notebooks when the Jupyter frontend cannot properly interact with the IPython kernel for interactive elements like plots, usually due to outdated libraries, incorrect environment configuration, or issues with Jupyter's inline charting.","error":"Javascript Error: IPython is not defined"},{"fix":"Perform a clean reinstallation of IPython. First, uninstall it: `pip uninstall ipython`, then clear the pip cache if necessary (`pip cache purge`), and finally reinstall: `pip install ipython`. Ensure you are doing this within the correct Python environment, especially after a Python interpreter upgrade.","cause":"This usually indicates a version conflict or a corrupted IPython installation. An older or incompatible version of IPython might be detected, or the installation is incomplete, leading to the `start_ipython` function not being exposed as expected. This can be common after Python version upgrades.","error":"ImportError: cannot import name start_ipython"}],"ecosystem":"pypi","meta_description":null,"install_score":100,"install_tag":"verified","quickstart_score":80,"quickstart_tag":"verified","pypi_latest":null,"install_checks":{"last_tested":"2026-05-12","tag":"verified","tag_description":"installs cleanly on critical runtimes, fast import, recently tested","results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":1.27,"mem_mb":27.6,"disk_size":"50.6M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":0.91,"mem_mb":27.6,"disk_size":"51M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":1.81,"mem_mb":31.9,"disk_size":"53.8M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":1.48,"mem_mb":31.9,"disk_size":"54M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":1.84,"mem_mb":31.2,"disk_size":"44.7M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":1.77,"mem_mb":31.2,"disk_size":"45M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":1.78,"mem_mb":31.7,"disk_size":"44.4M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":2.09,"mem_mb":31.7,"disk_size":"45M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":1.19,"mem_mb":27.9,"disk_size":"49.8M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"default","exit_code":0,"wheel_type":null,"failure_reason":null,"install_time_s":null,"import_time_s":1.01,"mem_mb":27.9,"disk_size":"50M"}]},"quickstart_checks":{"last_tested":"2026-04-23","tag":"verified","tag_description":"quickstart runs on critical runtimes, recently tested","results":[{"runtime":"python:3.10-alpine","exit_code":0},{"runtime":"python:3.10-slim","exit_code":0},{"runtime":"python:3.11-alpine","exit_code":0},{"runtime":"python:3.11-slim","exit_code":0},{"runtime":"python:3.12-alpine","exit_code":0},{"runtime":"python:3.12-slim","exit_code":0},{"runtime":"python:3.13-alpine","exit_code":0},{"runtime":"python:3.13-slim","exit_code":0},{"runtime":"python:3.9-alpine","exit_code":0},{"runtime":"python:3.9-slim","exit_code":0}]}}