Python

Search for '{{search_term}}'

Switch to interactive mode from a Python script

CMOS is the Code-Maven Open Source podcast that also includes video interviews. Subscribe to this feed RSS feed with your Podcast listener app or via iTunes iTunes.

Instead of stepping through your code with a debugger, you can add some code to your Python script or application that will instruct it to stop excuting and enter the interactive mode for you to examine what's going on.

This can be especially useful when trying out objects that require complex setup you don't want to type in the console.

Just add the following lines to your code where you'd like Python to switch to interactive mode:

import code
code.interact(local=locals())

The import line can be anywhere, but it might be a good idea to put it next to the "code.interact" line instead of the beginning of your file with all the other import statements. This will probably reduce the chances of forgeting to remove this import statement.

Then run your code as you'd do normally and when it reaches the specific instruction you'll see the following:

Python 2.7.9 (default, Apr  2 2015, 15:34:55) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> 

You can then do whatever you do at the console and you even have access to all the variable Python sees at that point in the code.

Pressing Ctrl-D will get you back to the script.

Comments

In the comments, please wrap your code snippets within <pre> </pre> tags and use spaces for indentation.
comments powered by Disqus