Search code examples
pythoninteractive

How to drop into REPL (Read, Eval, Print, Loop) from Python code


Is there a way to programmatically force a Python script to drop into a REPL at an arbitrary point in its execution, even if the script was launched from the command line?

I'm writing a quick and dirty plotting program, which I want to read data from stdin or a file, plot it, and then drop into the REPL to allow for the plot to be customized.


Solution

  • You could try using the interactive option for python:

    python -i program.py
    

    This will execute the code in program.py, then go to the REPL. Anything you define or import in the top level of program.py will be available.