Canopy Python Debugger Demo Video Play button
Enthought Canopy's graphical Python debugger allows you to methodically stop execution of code at breakpoints, step through code line by line, run scripts, and inspect arbitrary variables, including changing their values on the fly.

Enthought Canopy

Interactive Graphical Python Debugger

Already a Canopy subscriber?

Simply update to Canopy 1.5 or newer, log in again on the Canopy Welcome Screen, and you’ll see the active debugger tools in the Editor. Or subscribe now to get access .

Enthought Canopy's new graphical Python debugger has powerful functionality to help you quickly find and fix code errors, understand and investigate code, and write new code more quickly.

The integrated debugger, together with Canopy's advanced text editor with syntax highlighting, Python code auto-completion, and error checking, provides a robust development tool that makes solving complex coding issues easier and supports more accurate, efficient, and maintainable code development.

  • Powerful functionality combined with streamlined ease of use
  • A framework to understand and investigate code line by line to track down problems and follow code development
  • Convenient time-saving features such as keyboard shortcuts, tooltips for viewing active variables, and easy toggle in and out of debug view
  • Accommodates both GUI and command line use via tight integration with the IPython debugger

Canopy's Interactive Python Debugger Features

Click on any screen element below for expanded details

Interactive Graphical Python Code Debugger in Enthought Canopy
Canopy's Interactive Python Debugger Feature Details
Python Debugger Variable Browser

1
Debug Variable Browser

  • Displays variables and watch expressions in the currently selected frame of the Stack Browser pane as you step through code
  • Easily identifiable color-coding of function parameters, function return values, exceptions, and watch expressions
  • Allows for direct inline editing of select variables
  • Shows a high level view of all selected variables in the upper pane
  • Drill down into type-specific detailed representation of the content in the lower pane
  • View user custom-defined variables from the Python pane when not debugging
Easily Navigate an Execution Stack When Stepping Through Python Code

2
Stack Browser

  • Easily navigate a complex execution stack as you step through code
  • Shows you the frame stack of the debugged program when it is paused at a breakpoint or when stepping through code
  • Click on any frame in the stack to show its local variables in the Variable Browser pane
  • Double click on any frame in the stack to open the corresponding line of code in the code editor
Graphical Breakpoint Viewer to Inspect Python Code

3
Breakpoint Viewer

  • Shows all defined breakpoints in a single pane (places in the code where you want to temporarily pause execution to inspect the running program)
  • Allows you to easily enable/disable breakpoints or edit breakpoint conditions
IPython Debugger Integration for Command Line Interaction

4
IPython Pane Integration

  • Tight integration, so that changes in the Canopy debugger are reflected in the IPython debugger, and vice versa
  • Allows you to interact with data values or even call functions while paused in the live execution of your code. This helps you understand your code and data more deeply, and provides a powerful way to experiment with alternative approaches to the desired solution
  • Take advantage of the full interactive power and flexibility of the IPython command-line environment when your program is paused
  • Integration with IPython allows for interactive coding and data manipulation with ability to view plots, graphs, and arrays directly in the IPython pane using popular packages such as matplotlib, scikit-image, plot.ly and more
  • Canopy debugger commands map directly to IPython debugging commands, for an easy learning curve
Enthought Canopy Code Editor with Integrated Python Debugger

5
Canopy Code Editor

  • Canopy's code editor includes static syntax highlighting, Python code auto-completion, and error checking
  • The integrated debugger enhances the editor by providing floating tooltips to show you the value of active variables in the editor, while debugging
Quick Access to Python Debugger Commands

6
Debugging Menu

  • Easily access debugging commands from either a drop down menu or graphical toolbar
  • Configure the initial working directory and command-line arguments when running or debugging any script
  • Toggle debug panes to quickly switch in and out of debugging view
  • Follow your code line by line, with debugging actions including step into, step over, step out/return