Python (programming language)

Python
ParadigmMulti-paradigm: object-oriented,[1] procedural (imperative), functional, structured, reflective
Designed byGuido van Rossum
DeveloperPython Software Foundation
First appeared20 February 1991 (1991-02-20)[2]
Stable release
3.13.7[3]  / 14 August 2025 (14 August 2025)
Preview release
3.14.0rc2 / 14 August 2025 (2025-08-14)
Typing disciplineduck, dynamic, strong;[4] optional type annotations[a]
OSCross-platform[b]
LicensePython Software Foundation License
Filename extensions.py, .pyw, .pyz,[11]
.pyi, .pyc, .pyd
Websitepython.org
Major implementations
CPython, PyPy, MicroPython, CircuitPython, IronPython, Jython, Stackless Python
Dialects
Cython, RPython, Starlark[12]
Influenced by
ABC,[13] Ada,[14] ALGOL 68,[15]
APL,[16] C,[17] C++,[18] CLU,[19] Dylan,[20]
Haskell,[21][16] Icon,[22] Lisp,[23]
Modula-3
,[15][18] Perl,[24] Standard ML[16]
Influenced
Apache Groovy, Boo, Cobra, CoffeeScript,[25] D, F#, GDScript, Go, JavaScript,[26][27] Julia,[28] Mojo,[29] Nim, Ring,[30] Ruby,[31] Swift,[32] V[33]
  • Python Programming at Wikibooks

Python is a high-level, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation.[34]

Python is dynamically type-checked and garbage-collected. It supports multiple programming paradigms, including structured (particularly procedural), object-oriented and functional programming.

Guido van Rossum began working on Python in the late 1980s as a successor to the ABC programming language. Python 3.0, released in 2008, was a major revision not completely backward-compatible with earlier versions. Recent versions, such as Python 3.12, have added capabilites and keywords for typing (and more; e.g. increasing speed); helping with (optional) static typing.[35] Currently only versions in the 3.x series are supported.

Python consistently ranks as one of the most popular programming languages, and it has gained widespread use in the machine learning community.[36][37][38][39] It is widely taught as an introductory programming language.[40]

  1. ^ "General Python FAQ – Python 3 documentation". docs.python.org. Retrieved 7 July 2024.
  2. ^ "Python 0.9.1 part 01/21". alt.sources archives. Archived from the original on 11 August 2021. Retrieved 11 August 2021.
  3. ^ "Python Insider: Python 3.14.0rc2 and 3.13.7 are go!". 14 August 2025. Retrieved 14 August 2025.
  4. ^ "Why is Python a dynamic language and also a strongly typed language". Python Wiki. Archived from the original on 14 March 2021. Retrieved 27 January 2021.
  5. ^ "PEP 483 – The Theory of Type Hints". Python.org. Archived from the original on 14 June 2020. Retrieved 14 June 2018.
  6. ^ "PEP 11 – CPython platform support | peps.python.org". Python Enhancement Proposals (PEPs). Retrieved 22 April 2024.
  7. ^ "PEP 738 – Adding Android as a supported platform | peps.python.org". Python Enhancement Proposals (PEPs). Retrieved 19 May 2024.
  8. ^ "Download Python for Other Platforms". Python.org. Archived from the original on 27 November 2020. Retrieved 18 August 2023.
  9. ^ "test – Regression tests package for Python – Python 3.7.13 documentation". docs.python.org. Archived from the original on 17 May 2022. Retrieved 17 May 2022.
  10. ^ "platform – Access to underlying platform's identifying data – Python 3.10.4 documentation". docs.python.org. Archived from the original on 17 May 2022. Retrieved 17 May 2022.
  11. ^ Holth, Moore (30 March 2014). "PEP 0441 – Improving Python ZIP Application Support". Archived from the original on 26 December 2018. Retrieved 12 November 2015.
  12. ^ "Starlark Language". Archived from the original on 15 June 2020. Retrieved 25 May 2019.
  13. ^ Cite error: The named reference faq-created was invoked but never defined (see the help page).
  14. ^ "Ada 83 Reference Manual (raise statement)". Archived from the original on 22 October 2019. Retrieved 7 January 2020.
  15. ^ a b Cite error: The named reference 98-interview was invoked but never defined (see the help page).
  16. ^ a b c "itertools – Functions creating iterators for efficient looping – Python 3.7.1 documentation". docs.python.org. Archived from the original on 14 June 2020. Retrieved 22 November 2016. This module implements a number of iterator building blocks inspired by constructs from APL, Haskell, and SML.
  17. ^ Cite error: The named reference AutoNT-1 was invoked but never defined (see the help page).
  18. ^ a b Cite error: The named reference classmix was invoked but never defined (see the help page).
  19. ^ Cite error: The named reference effbot-call-by-object was invoked but never defined (see the help page).
  20. ^ Cite error: The named reference AutoNT-2 was invoked but never defined (see the help page).
  21. ^ Cite error: The named reference AutoNT-3 was invoked but never defined (see the help page).
  22. ^ Cite error: The named reference AutoNT-4 was invoked but never defined (see the help page).
  23. ^ Cite error: The named reference AutoNT-6 was invoked but never defined (see the help page).
  24. ^ "re – Regular expression operations – Python 3.10.6 documentation". docs.python.org. Archived from the original on 18 July 2018. Retrieved 6 September 2022. This module provides regular expression matching operations similar to those found in Perl.
  25. ^ "CoffeeScript". coffeescript.org. Archived from the original on 12 June 2020. Retrieved 3 July 2018.
  26. ^ "Perl and Python influences in JavaScript". www.2ality.com. 24 February 2013. Archived from the original on 26 December 2018. Retrieved 15 May 2015.
  27. ^ Rauschmayer, Axel. "Chapter 3: The Nature of JavaScript; Influences". O'Reilly, Speaking JavaScript. Archived from the original on 26 December 2018. Retrieved 15 May 2015.
  28. ^ Cite error: The named reference Julia was invoked but never defined (see the help page).
  29. ^ Krill, Paul (4 May 2023). "Mojo language marries Python and MLIR for AI development". InfoWorld. Archived from the original on 5 May 2023. Retrieved 5 May 2023.
  30. ^ Ring Team (4 December 2017). "Ring and other languages". ring-lang.net. ring-lang. Archived from the original on 25 December 2018. Retrieved 4 December 2017.
  31. ^ Cite error: The named reference bini was invoked but never defined (see the help page).
  32. ^ Lattner, Chris (3 June 2014). "Chris Lattner's Homepage". Chris Lattner. Archived from the original on 25 December 2018. Retrieved 3 June 2014. The Swift language is the product of tireless effort from a team of language experts, documentation gurus, compiler optimization ninjas, and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course, it also greatly benefited from the experiences hard-won by many other languages in the field, drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.
  33. ^ "V documentation (Introduction)". GitHub. Retrieved 24 December 2024.
  34. ^ Cite error: The named reference AutoNT-7 was invoked but never defined (see the help page).
  35. ^ "mypy - Optional Static Typing for Python". mypy-lang.org. Retrieved 17 August 2025.
  36. ^ "Stack Overflow Developer Survey 2022". Stack Overflow. Archived from the original on 27 June 2022. Retrieved 12 August 2022.
  37. ^ "The State of Developer Ecosystem in 2020 Infographic". JetBrains: Developer Tools for Professionals and Teams. Archived from the original on 1 March 2021. Retrieved 5 March 2021.
  38. ^ "TIOBE Index". TIOBE. Archived from the original on 25 February 2018. Retrieved 3 January 2023. The TIOBE Programming Community index is an indicator of the popularity of programming languages Updated as required.
  39. ^ Healy, John; McInnes, Leland; Weir, Colin (2017). "Bridging the Cyber-Analysis Gap: The Democratization of Data Science". The Cyber Defense Review. 2 (1): 109–118. ISSN 2474-2120. JSTOR 26267404. Python is the lingua franca of data science and machine learning.
  40. ^ Sultana, Simon G.; Reed, Philip A. (2017). "Curriculum for an Introductory Computer Science Course: Identifying Recommendations from Academia and Industry". The Journal of Technology Studies. 43 (2): 80–92. doi:10.21061/jots.v43i2.a.3. ISSN 1071-6084. JSTOR 90023144.


Cite error: There are <ref group=lower-alpha> tags or {{efn}} templates on this page, but the references will not show without a {{reflist|group=lower-alpha}} template or {{notelist}} template (see the help page).