Software:Spyder

From HandWiki
Short description: IDE for scientific programming in Python
Spyder
Spyder IDE logo and wordmark
Spyder-windows-screenshot.png
Screenshot of Spyder on Windows
Original author(s)Pierre Raybaut
Developer(s)Spyder project contributors
Initial release18 October 2009; 14 years ago (2009-10-18)[1][2]
Written inPython
Operating systemCross-platform
PlatformQt, Windows, macOS, Linux
TypeIntegrated development environment
LicenseMIT

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

References

  1. "spyder-ide/spyder at v1.0.0". GitHub. https://github.com/spyder-ide/spyder/tree/v1.0.0. Retrieved 3 April 2017. 
  2. "(Python)(ANN) Spyder v1.0.0 released". 18 October 2009. https://www.riverbankcomputing.com/pipermail/pyqt/2009-October/024764.html. 
  3. "Migrating from MATLAB to Python". et.byu.edu. http://web.ics.purdue.edu/~smit1447/blog/?p=24. Retrieved 9 February 2014. 
  4. "Spyder review". review.techworld.com. http://review.techworld.com/applications/3238833/spyder-review/. Retrieved 9 February 2014. 
  5. "Spyder license". https://github.com/spyder-ide/spyder/blob/master/LICENSE.txt. 
  6. "SpyderPlugins – spyderlib – Plugin development – Spyder is the Scientific PYthon Development EnviRonment". http://code.google.com/p/spyderlib/wiki/SpyderPlugins. 
  7. "Pylint extension – Spyder 2.2 documentation". packages.python.org. http://packages.python.org/spyder/pylint.html. Retrieved 9 February 2014. 
  8. "Reviews for spyder". apps.ubuntu.com. https://apps.ubuntu.com/cat/applications/oneiric/spyder/reviews/. Retrieved 9 February 2014. 
  9. "Seznámení s Python IDE Spyder". fedora.cz. http://fedora.cz/seznameni-s-python-ide-spyder/. 
  10. "Spyder runtime dependencies". github.com. 21 February 2015. https://github.com/spyder-ide/spyder/blob/master/README.md#runtime-dependencies. 
  11. "QtPy: Abstraction layer for PySide/PyQt4/PyQt5". github.com. 23 October 2015. https://github.com/spyder-ide/qtpy/blob/master/README.md. Retrieved 28 December 2015. 
  12. "Spyder Documention – Features Overview". Spyder Project. https://docs.spyder-ide.org/overview.html. 
  13. "Spyder Plugins List". Spyder Project. https://github.com/spyder-ide. 

External links