Spyder is a powerful Python integrated development environment. It has a unique combination of the advanced editing, analysis, debugging and profiling capabilities of comprehensive development tools with the data exploration, interactive execution, deep inspection and elegant visualization capabilities of scientific software packages.
In addition to its many built-in features, its functionality can be further extended through its plugin system and API. Additionally, Spyder is available as a PyQt5 extension library, allowing you to build its functionality and embed its components (such as interactive consoles) into your own software.
Core components
edit
Effectively use function/class browsers, real-time code analysis tools, multi-language editing (pyflakes, pylint, and pycodestyle), automatic code completion (jedi and rope), horizontal/vertical splitting, and heading clarity.
interactive console
Leverage the power of any number of IPython consoles to provide full workspace and debugging support within the flexibility of a full GUI interface. Instantly run code by line, unit or file and plot inline with the output or directly in the interactive window.
Document viewer
Use Sphinx to render documentation for any class or function (whether external or user-created) in real time from the editor or console.
variable browser
Check any variables, functions or objects created during the session. Editing and interaction are supported for many common types, including numbers/strings/booleans, Python lists/tuples/dictionaries, date/time increments, Numpy arrays, Pandas indexes/series/dataframes, PIL/pillow images, and more.
development tools
Inspect your code with a static analyzer, trace its execution with the interactive debugger, and unlock its performance with the profiler. Keep things organized with project support and a built-in file browser, and use the Find in Files feature to search your entire project with full regular expression support.