General-purpose programming language
Python Paradigm Multi-paradigm : object-oriented ,[ 1] procedural (imperative ), functional , structured , reflective Designed by Guido van Rossum Developer Python Software Foundation First appeared 20 February 1991; 33 years ago (1991-02-20 ) [ 2] Stable release 3.12.5
/ 7 August 2024
; 11 days ago (7 August 2024 )
Typing discipline duck , dynamic , strong ;[ 3] optional type annotations (since 3.5, but those hints are ignored, except with unofficial tools)[ 4] OS Tier 1 : 64-bit Linux , macOS ; 64- and 32-bit Windows 10+[ 5] Tier 2 : E.g. 32-bit WebAssembly (WASI) Tier 3 : 64-bit FreeBSD , iOS ; e.g. Raspberry Pi OS Unofficial (or has been known to work): Other Unix-like /BSD variants and e.g. Android 5.0+ (official from Python 3.13 planned[ 6] ) and a few other platforms[ 7] [ 8] [ 9] License Python Software Foundation License Filename extensions .py, .pyw, .pyz,[ 10]
.pyi, .pyc, .pyd Website python.org CPython , PyPy , Stackless Python , MicroPython , CircuitPython , IronPython , Jython Cython , RPython , Starlark [ 11] ABC ,[ 12] Ada ,[ 13] ALGOL 68 ,[ 14] APL ,[ 15] C ,[ 16] C++ ,[ 17] CLU ,[ 18] Dylan ,[ 19] Haskell ,[ 20] [ 15] Icon ,[ 21] Lisp ,[ 22] Modula-3 ,[ 14] [ 17] Perl ,[ 23] Standard ML [ 15] Apache Groovy , Boo , Cobra , CoffeeScript ,[ 24] D , F# , GDScript , Go , JavaScript ,[ 25] [ 26] Julia ,[ 27] Mojo ,[ 28] Nim , Ring ,[ 29] Ruby ,[ 30] Swift [ 31]
Python is a high-level , general-purpose programming language . Its design philosophy emphasizes code readability with the use of significant indentation .[ 32]
Python is dynamically typed and garbage-collected . It supports multiple programming paradigms , including structured (particularly procedural ), object-oriented and functional programming . It is often described as a "batteries included" language due to its comprehensive standard library .[ 33] [ 34]
Guido van Rossum began working on Python in the late 1980s as a successor to the ABC programming language and first released it in 1991 as Python 0.9.0.[ 35] Python 2.0 was released in 2000. Python 3.0, released in 2008, was a major revision not completely backward-compatible with earlier versions. Python 2.7.18, released in 2020, was the last release of Python 2.[ 36]
Python consistently ranks as one of the most popular programming languages, and has gained widespread use in the machine learning community.[ 37] [ 38] [ 39] [ 40]
^ "General Python FAQ – Python 3 documentation" . docs.python.org . Retrieved 7 July 2024 .
^ "Python 0.9.1 part 01/21" . alt.sources archives. Archived from the original on 11 August 2021. Retrieved 11 August 2021 .
^ "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 .
^ "PEP 483 – The Theory of Type Hints" . Python.org . Archived from the original on 14 June 2020. Retrieved 14 June 2018 .
^ "PEP 11 – CPython platform support | peps.python.org" . Python Enhancement Proposals (PEPs) . Retrieved 22 April 2024 .
^ "PEP 738 – Adding Android as a supported platform | peps.python.org" . Python Enhancement Proposals (PEPs) . Retrieved 19 May 2024 .
^ "Download Python for Other Platforms" . Python.org . Archived from the original on 27 November 2020. Retrieved 18 August 2023 .
^ "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 .
^ "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 .
^ Holth, Moore (30 March 2014). "PEP 0441 – Improving Python ZIP Application Support" . Archived from the original on 26 December 2018. Retrieved 12 November 2015 .
^ "Starlark Language" . Archived from the original on 15 June 2020. Retrieved 25 May 2019 .
^ Cite error: The named reference faq-created
was invoked but never defined (see the help page ).
^ "Ada 83 Reference Manual (raise statement)" . Archived from the original on 22 October 2019. Retrieved 7 January 2020 .
^ a b Cite error: The named reference 98-interview
was invoked but never defined (see the help page ).
^ 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.
^ Cite error: The named reference AutoNT-1
was invoked but never defined (see the help page ).
^ a b Cite error: The named reference classmix
was invoked but never defined (see the help page ).
^ Cite error: The named reference effbot-call-by-object
was invoked but never defined (see the help page ).
^ Cite error: The named reference AutoNT-2
was invoked but never defined (see the help page ).
^ Cite error: The named reference AutoNT-3
was invoked but never defined (see the help page ).
^ Cite error: The named reference AutoNT-4
was invoked but never defined (see the help page ).
^ Cite error: The named reference AutoNT-6
was invoked but never defined (see the help page ).
^ "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.
^ "CoffeeScript" . coffeescript.org . Archived from the original on 12 June 2020. Retrieved 3 July 2018 .
^ "Perl and Python influences in JavaScript" . www.2ality.com . 24 February 2013. Archived from the original on 26 December 2018. Retrieved 15 May 2015 .
^ 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 .
^ Cite error: The named reference Julia
was invoked but never defined (see the help page ).
^ 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 .
^ 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 .
^ Cite error: The named reference bini
was invoked but never defined (see the help page ).
^ 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.
^ Cite error: The named reference AutoNT-7
was invoked but never defined (see the help page ).
^ Cite error: The named reference About
was invoked but never defined (see the help page ).
^ "PEP 206 – Python Advanced Library" . Python.org . Archived from the original on 5 May 2021. Retrieved 11 October 2021 .
^ Rossum, Guido Van (20 January 2009). "The History of Python: A Brief Timeline of Python" . The History of Python . Archived from the original on 5 June 2020. Retrieved 5 March 2021 .
^ Peterson, Benjamin (20 April 2020). "Python 2.7.18, the last release of Python 2" . Python Insider . Archived from the original on 26 April 2020. Retrieved 27 April 2020 .
^ "Stack Overflow Developer Survey 2022" . Stack Overflow . Archived from the original on 27 June 2022. Retrieved 12 August 2022 .
^ "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 .
^ "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.
^ "PYPL PopularitY of Programming Language index" . pypl.github.io . Archived from the original on 14 March 2017. Retrieved 26 March 2021 .