Python Programming Language: Difference between revisions

From GM-RKB
Jump to navigation Jump to search
No edit summary
 
No edit summary
 
(54 intermediate revisions by 3 users not shown)
Line 1: Line 1:
A [[Python Programming Language]] is a [[Programming Language]].
A [[Python Programming Language]] is a [[general-purpose programming language|general-purpose]], [[high-level programming language|high-level]] [[dynamic programming language]] managed by the [[Python Software Foundation]].
* <B><U>AKA</U>:</B> [[Python]], [[Python Language]].
* <B>Context:</B>
* <B><U>Context</U>:</B>
** It can typically be used to define [[Python Code]] (such as [[Python program]] or a [[Python library]]) with [[Python statement]]s (for [[Python variable]]s, [[Python data structure]]s, and [[Python conditional statement]]s) that can be interpreted by a [[Python Interpreter]].
** It is a [[High-level Programming Language]].
** It can typically implement a [[Clean Syntax]] with [[indentation-based block structure]] for improved [[code readability]].
** It is a [[General-Purpose Programming Language]].
** It can typically support multiple [[Programming Paradigm]]s including [[object-oriented programming]], [[functional programming]], [[procedural programming]], and [[imperative programming]].
** It is an [[Interpreted Programming Language]].
** It can typically provide [[Dynamic Typing]] where [[variable type]]s are determined at [[runtime]] rather than [[compile time]].
** It is a [[Dynamic Programming Language]].
** It can typically include [[Automatic Memory Management]] with [[garbage collection]] to handle [[object lifecycle]].
** It can be associated with a [[Python Program]], with: [[Python Variable]]s, [[Python Data Structure]]s, [[Python Conditional Statement]]s, etc.
** It can typically implement [[First-Class Function]]s that can be [[assigned to variable]]s, [[passed as argument]]s, and [[returned from function]]s.
* <B><U>Example(s)</U>:</B>  
** ...
** Python v2.7
** It can often be an [[Interpreted Programming Language]] (unlike, [[Cython]]).
** Python v3.0
** It can often be used for [[Rapid Prototyping]] due to its [[development speed]] and [[concise syntax]].
* <B>Counter-Example(s)</B>
** It can often leverage [[Extension Module]]s written in [[C language]] or [[C++]] for [[performance-critical operation]]s.
** [[Perl Programming Language]].
** It can often support [[Cross-Platform Development]] with consistent [[behavior]] across [[operating system]]s.
** [[Java Programming Language]].
** It can often be employed in [[Data Science]] for [[data analysis]], [[statistical modeling]], and [[machine learning]].
** [[Julia Programming Language]].
** ...
* <B><U>See</U>:</B> [[SciPy Library]].
** It can range from being a [[Scripting Language]] for [[automation task]]s to being an [[Application Development Language]] for [[enterprise application]]s.
** It can range from being a [[Teaching Language]] in [[educational setting]]s to being a [[Production Language]] in [[commercial environment]]s.
** It can range from being a [[Simple Implementation]] with [[basic functionality]] to being a [[Complex Implementation]] with [[advanced feature]]s, depending on its [[implementation variation]].
** It can range from having [[Few Third-Party Package]]s to having [[Extensive Ecosystem]]s of [[specialized library]]s, depending on its [[development stage]].
** ...
** It can typically include [[Python Standard Librari]]es.
** It can be parsed by a [[Python Parser]] (e.g. in a [[Python implementation]], such as [[CPython]]).
** It can have a [[Python Package Index]] ([[PyPI]]) for [[third-party package distribution]].
** It can have [[Python Enhancement Proposal]]s ([[PEP]]s) that document [[language design decision]]s and [[proposed feature]]s.
** It can have a [[GIL]] ([[Global Interpreter Lock]]) in its [[CPython implementation]] that affects [[multithreaded performance]].
** It can have a [[Python Community]] that contributes to its [[language development]] and [[ecosystem growth]].
** ...
* <B>Examples:</B>
** [[Python Version]]s, such as:
*** [[Python v1]], such as:
**** [[Python v1.0]] (~1994-01).
**** ...
*** [[Python v2]], such as:
**** [[Python v2.0]] (~1997-12-31).
**** [[Python v2.1]] (~2000-09-05).
**** [[Python v2.6]] (~2008-10-01).
**** [[Python v2.7]] (~2010-07-03).
**** [[Python v2.7.14]] (~2017-09-16) [https://www.python.org/downloads/release/python-2714/].
**** …
*** [[Python v3]], such as:
**** [[Python v3.0]] (~2008-12-03).
**** [[Python v3.5]] (~2015-09-13).
**** [[Python v3.6.4]] (~2017-12-18) [https://www.python.org/downloads/release/python-364/].
**** [[Python v3.8.1]] (~2019-12-18) [https://www.python.org/downloads/release/python-381]
**** [[Python v3.11.4]] (~2023-06-06) [https://www.python.org/downloads/release/python-3114]
**** …
** [[Python Implementation]]s, such as:
*** [[CPython]], the [[reference implementation]] written in [[C language]].
*** [[PyPy]], with [[just-in-time compilation]] for [[improved performance]].
*** [[Jython]], running on the [[Java Virtual Machine]].
*** [[IronPython]], integrated with the [[.NET Framework]].
*** [[MicroPython]], for [[microcontroller]] and [[resource-constrained environment]]s.
** [[Python Application Domain]]s, such as:
*** [[Web Development Framework]]s, such as [[Django]], [[Flask]], and [[FastAPI]].
*** [[Data Science Tool]]s, such as [[NumPy]], [[Pandas]], and [[SciPy]].
*** [[Machine Learning Framework]]s, such as [[TensorFlow]], [[PyTorch]], and [[scikit-learn]].
*** [[Game Development Librari]]es, such as [[Pygame]] and [[Panda3D]].
*** [[System Administration Tool]]s, such as [[Ansible]] and [[Salt]].
** ...
* <B>Counter-Examples:</B>
** [[Statically Typed Language]]s with [[explicit type declaration]]s, such as [[Java Language]], [[C++ Language]], and [[Go Language]].
** [[Compiled Programming Language]]s that [[translate to machine code]] directly, such as [[C Language]], [[Rust Language]], and [[Swift Language]].
** [[Domain-Specific Language]]s with [[specialized usage]], such as [[SQL]], [[R Language]], and [[MATLAB]].
** [[Perl Language]], [[JavaScript]], [[Ruby Language]], [[Julia Language]], [[TypeScript]], which are [[alternative dynamic language]]s with [[different design philosophy]]s.
** [[Python-Like Language]]s that [[borrow syntax]] but have [[different semantics]], such as [[Boo Language]] and [[Cobra Language]].
* <B>See:</B> [[Python Library]], [[Python Shell]], [[CPython]], [[Type Hinting Library]], [[Python Virtual Environment]], [[Python Decorator]], [[Python Generator]], [[Python Comprehension]], [[Python Interpreter]], [[Python Bytecode]].
 
----
----
----
----
==References ==


===2012===
== References ==
* http://en.wikipedia.org/wiki/Python_(programming_language)
 
** QUOTE: '''Python''' is a [[general-purpose programming language|general-purpose]], [[high-level programming language]] whose design philosophy emphasizes code [[readability]]. Python claims to combine "remarkable power with very clear syntax",<ref>{{cite web |url=http://docs.python.org/faq/general.html#what-is-python |title=What is Python? |work=General Python FAQ |publisher=Python Software Foundation |accessdate=27 June 2009}}</ref> and its [[#Standard library|standard library]] is large and comprehensive.  <P>    Python supports multiple [[programming paradigm]]s, primarily but not limited to [[object-oriented programming|object-oriented]], [[imperative programming|imperative]] and, to a lesser extent, [[functional programming]] styles. It features a fully [[dynamic type]] system and automatic [[memory management]], similar to that of [[Scheme (programming language)|Scheme]], [[Ruby (programming language)|Ruby]], [[Perl]], and [[Tcl]].  Like other [[dynamic language]]s, Python is often used as a [[scripting language]], but is also used in a wide range of non-scripting contexts.  Using third-party tools, Python code can be packaged into standalone executable programs. Python interpreters are available for many operating systems.   <P>    The [[reference implementation]] of Python ([[CPython]]) is [[free and open source software]] and has a community-based development model, as do nearly all of its alternative implementations. CPython is managed by the non-profit [[Python Software Foundation]].
=== 2018 ===
* (Wikipedia, 2018) ⇒ https://en.wikipedia.org/wiki/Python_(programming_language) Retrieved:2018-3-18.
** '''Python''' is an [[interpreted language|interpreted]] [[high-level programming language]] for [[general-purpose programming language|general-purpose programming]]. Created by [[Guido van Rossum]] and first released in 1991, Python has a design philosophy that emphasizes [[code readability]], and a [[syntax (programming languages)|syntax]] that allows programmers to express concepts in fewer [[source lines of code|lines of code]], notably using significant [[whitespace]]. It provides constructs that enable clear programming on both small and large scales.  Python features a [[dynamic type system]] and automatic [[memory management]]. It supports multiple [[programming paradigm]]s, including [[object-oriented programming|object-oriented]], [[imperative programming|imperative]], [[functional programming|functional]] and [[procedural programming|procedural]], and has a large and comprehensive [[standard library]]. Python interpreters are available for many [[operating system]]s. [[CPython]], the [[reference implementation]] of Python, is [[open source]] software <ref> "All Python releases are Open Source" </ref> and has a community-based development model, as do nearly all of its variant implementations. CPython is managed by the non-profit [[Python Software Foundation]].
<references/>
 
=== 2015 ===
* [[Adarsh Verma]]. ([[2015]]). “[http://fossbytes.com/learn-it-faster-the-entire-python-language-in-a-single-image/ The Entire Python Language in a Single Image]." September 23, 2015
** <HTML><IMG SRC=http://d2brer6wwumtdu.cloudfront.net/wp-content/uploads/2015/09/python-3-in-one-pic.png></HTML>


===2009===
=== 2009 ===
* http://www.python.org/
* http://www.python.org/
** Python is a dynamic object-oriented programming language that can be used for many kinds of software development. It offers strong support for integration with other languages and tools, comes with extensive standard libraries, and can be learned in a few days. Many Python programmers report substantial productivity gains and feel the language encourages the development of higher quality, more maintainable code.
** Python is a dynamic object-oriented programming language that can be used for many kinds of software development. It offers strong support for integration with other languages and tools, comes with extensive standard libraries, and can be learned in a few days. Many Python [[programmer]]s report substantial productivity gains and feel the language encourages the development of higher quality, more maintainable code.
** Python runs on Windows, Linux/Unix, Mac OS X, OS/2, Amiga, Palm Handhelds, and Nokia mobile phones. Python has also been ported to the Java and .NET virtual machines.
** Python runs on Windows, Linux/Unix, Mac OS X, OS/2, Amiga, Palm Handhelds, and Nokia mobile phones. Python has also been ported to the Java and .NET virtual machines.
** Python is distributed under an OSI-approved open source license that makes it free to use, even for commercial products.
** Python is distributed under an OSI-approved open source license that makes it free to use, even for [[commercial product]]s.


----
----
Line 33: Line 90:
__NOTOC__
__NOTOC__
[[Category:Concept]]
[[Category:Concept]]
[[Category:Programming Language]]
[[Category:Software Development]]
[[Category:Quality Silver]]

Latest revision as of 04:43, 2 March 2025

A Python Programming Language is a general-purpose, high-level dynamic programming language managed by the Python Software Foundation.



References

2018

  1. "All Python releases are Open Source"

2015

2009

  • http://www.python.org/
    • Python is a dynamic object-oriented programming language that can be used for many kinds of software development. It offers strong support for integration with other languages and tools, comes with extensive standard libraries, and can be learned in a few days. Many Python programmers report substantial productivity gains and feel the language encourages the development of higher quality, more maintainable code.
    • Python runs on Windows, Linux/Unix, Mac OS X, OS/2, Amiga, Palm Handhelds, and Nokia mobile phones. Python has also been ported to the Java and .NET virtual machines.
    • Python is distributed under an OSI-approved open source license that makes it free to use, even for commercial products.