Spyder (software) explained
Spyder is an open-source cross-platform integrated development environment (IDE) for scientific programming in the Python language. Spyder integrates with a number of prominent packages in the scientific Python stack, including NumPy, SciPy, Matplotlib, pandas, IPython, SymPy and Cython, as well as other open-source software.[3] [4] It is released under the MIT license.[5]
Initially created and developed by Pierre Raybaut in 2009, since 2012 Spyder has been maintained and continuously improved by a team of scientific Python developers and the community.
Spyder is extensible with first-party and third-party plugins,[6] includes support for interactive tools for data inspection and embeds Python-specific code quality assurance and introspection instruments, such as Pyflakes, Pylint[7] and Rope. It is available cross-platform through Anaconda, on Windows, on macOS through MacPorts, and on major Linux distributions such as Arch Linux, Debian, Fedora, Gentoo Linux, openSUSE and Ubuntu.[8] [9]
Spyder uses Qt for its GUI and is designed to use either of the PyQt or PySide Python bindings.[10] QtPy, a thin abstraction layer developed by the Spyder project and later adopted by multiple other packages, provides the flexibility to use either backend.[11]
Features
Features include:[12]
- An editor with syntax highlighting, introspection, code completion
- Support for multiple IPython consoles
- The ability to explore and edit variables from a GUI
- A Help pane able to retrieve and render rich text documentation on functions, classes and methods automatically or on-demand
- A debugger linked to IPdb, for step-by-step execution
- Static code analysis, powered by Pylint
- A run-time Profiler, to benchmark code
- Project support, allowing work on multiple development efforts simultaneously
- A built-in file explorer, for interacting with the filesystem and managing projects
- A "Find in Files" feature, allowing full regular expression search over a specified scope
- An online help browser, allowing users to search and view Python and package documentation inside the IDE
- A history log, recording every user command entered in each console
- An internal console, allowing for introspection and control over Spyder's own operation
Plugins
Available plugins include:[13]
- Spyder-Unittest, which integrates the popular unit testing frameworks Pytest, Unittest and Nose with Spyder
- Spyder-Notebook, allowing the viewing and editing of Jupyter Notebooks within the IDE
- Download Spyder Notebook
- Using conda: conda install spyder-notebook -c spyder-ide
- Using pip: pip install spyder-notebook
- Spyder-Reports, enabling use of literate programming techniques in Python
- Spyder-Terminal, adding the ability to open, control and manage cross-platform system shells within Spyder
- Download Spyder Terminal
- Using conda: conda install spyder-terminal -c spyder-ide
- Using pip: pip install spyder-terminal
- Spyder-Vim, containing commands and shortcuts emulating the Vim text editor
- Spyder-AutoPEP8, which can automatically conform code to the standard PEP 8 code style
- Spyder-Line-Profiler and Spyder-Memory-Profiler, extending the built-in profiling functionality to include testing an individual line, and measuring memory usage
See also
- Comparison of integrated development environments for Python
External links
Notes and References
- Web site: spyder-ide/spyder at v1.0.0 . . 3 April 2017.
- Web site: (Python)(ANN) Spyder v1.0.0 released . 18 October 2009.
- Web site: Migrating from MATLAB to Python . dead . https://web.archive.org/web/20141010221143/http://web.ics.purdue.edu:80/~smit1447/blog/?p=24 . 2014-10-10 . Greener Engineering . et.byu.edu . 9 February 2014.
- Web site: Spyder review . review.techworld.com . 9 February 2014 . 3 December 2013 . https://web.archive.org/web/20131203014000/http://review.techworld.com/applications/3238833/spyder-review/ . dead .
- Web site: Spyder license. .
- Web site: SpyderPlugins – spyderlib – Plugin development – Spyder is the Scientific PYthon Development EnviRonment . 9 February 2014 . dead . https://web.archive.org/web/20131024165518/http://code.google.com/p/spyderlib/wiki/SpyderPlugins . 24 October 2013 .
- Web site: Pylint extension – Spyder 2.2 documentation . packages.python.org . 9 February 2014 . 1 February 2014 . https://web.archive.org/web/20140201022109/http://packages.python.org/spyder/pylint.html . dead .
- Web site: Reviews for spyder . apps.ubuntu.com . 9 February 2014.
- Web site: Seznámení s Python IDE Spyder . fedora.cz . 9 February 2014 . dead . https://web.archive.org/web/20130820121204/http://fedora.cz/seznameni-s-python-ide-spyder/ . 20 August 2013 .
- Web site: Spyder runtime dependencies . 21 February 2015 . github.com .
- Web site: QtPy: Abstraction layer for PySide/PyQt4/PyQt5 . 23 October 2015 . 28 December 2015 . github.com .
- Web site: Spyder Documention – Features Overview . Spyder Project . 2018-07-30 . dead . 2019-01-23 . https://web.archive.org/web/20190123054617/http://docs.spyder-ide.org/overview.html .
- Web site: Spyder Plugins List . Spyder Project . 2018-07-30 .