Introduction to Python 2016
The history of the Python programming language dates
back to the late 1980s.
Python was conceived in the late 1980s and its implementation
was started in December 1989 by Guido van Rossum at CWI in
the Netherlands as a successor to the ABC programming
language capable of exception handling and interfacing with
the Amoeba operating system. An Rossum is Python's principal
author, and his continuing central role in deciding the direction
of Python is reflected in the title given to him by the Python
community, Benevolent Dictator for Life (BDFL).
Python 2.0 was released on October 16, 2000, with many major new features
including, a cycle-detecting garbage collector (in addition to reference counting)
for memory management and support for Unicode. However, the most important
change was to the development process itself, with a shift to a more transparent and
community-backed process. Python 3.0, a major, backwards-incompatible release, was
released on December 3, 2008 after a long period of testing. Many of its major
features have also been back ported to the backwards-compatible Python 2.6 and 2.7.
In February 1991, Van Rossum published the code (labeled version 0.9.0) to
alt.sources. Already present at this stage in development were classes with
inheritance, exception handling, functions, and the core datatypes
of list, dict, str and so on. Also in this initial release was a module system borrowed
from Modula-3; Van Rossum describes the module as "one of Python's major
programming units".]
Python's exception model also resembles Modula-3's, with the
addition of an else clause. In 1994comp.lang.python, the primary discussion forum
for Python, was formed, marking a milestone in the growth of Python's userbase.
Timeline and compatibility
Python 3.0 was released on December 3, 2008.The Python
2.x and Python 3.x series were planned to coexist for several
releases in parallel, with the 2.x series existing largely for
compatibility and with some new features being back ported
from the 3.x series. Python 2.6 was released to coincide with
Python 3.0, and included some features from that release, as
well as a "warnings" mode that highlighted the use of
features that were removed in Python 3.0.Similarly, Python 2.7 coincided with and
included features from Python 3.1 which was released on June 26, 2009. Python 2.7
was the last release in the 2.x series;[
parallel releases ceased as of Python 3.2.
Introduction to Python 2016
Python 3.0 broke backward compatibility. There was no requirement that Python 2.x
code would run unmodified on Python 3.0. There were basic changes such as
changing the print statement into a print function (so any use of print as a statement
will cause the program to fail), and switching to Unicode for all text strings.
Python's dynamic typing combined with the plans to change the semantics of certain
methods of dictionaries, for example, made perfect mechanical translation from
Python 2.x to Python 3.0 very difficult. However, a tool called "2to3" could do most of
the job of translation, pointing out areas of uncertainty using comments or warnings.
Even in an alpha stage, 2to3 appeared to be fairly successful at performing the
translation. For projects requiring compatibility with the 2.x and 3.x series, the
Python development team recommended keeping one source (for the 2.x series), and
producing releases for the Python 3.x platform using 2to3. Edits to the Python 3.x
code were discouraged for so long as the code needed to run on Python 2.x.
Influences from other languages
Python's core syntax and certain aspects of its philosophy are
directly inherited from ABC. C provided some of Python's
syntax, and the Bourne shell served as the model for an
interpreter that becomes interactive when run without
arguments. List comprehensions, anonymous functions,
lexical closures and the map function are among the major
features borrowed from functional languages, primarily
dialects of Lisp and Haskell. Generators and iterators were
inspired by Icon, and were then fused with the functional
programming ideas borrowed into a unified model. Modula-
3 was the basis of the exception model and module system.
Release dates for the major and minor versions
Python 1.0 - January 1994
Python 1.5 - December 31, 1997
Python 1.6 - September 5, 2000
Python 2.0 - October 16, 2000
Python 2.1 - April 17, 2001
Python 2.2 - December 21, 2001
Python 2.3 - July 29, 2003
Python 2.4 - November 30, 2004
Python 2.5 - September 19, 2006
Python 2.6 - October 1, 2008
Python 2.7 - July 3, 2010
Python 3.0 - December 3, 2008
Python 3.1 - June 27, 2009
Python 3.2 - February 20, 2011
Python 3.3 - September 29, 2012
Python 3.4 - March 16, 2014
Python 3.5 - September 13, 2015
Introduction to Python 2016

python 1

  • 1.
    Introduction to Python2016 The history of the Python programming language dates back to the late 1980s. Python was conceived in the late 1980s and its implementation was started in December 1989 by Guido van Rossum at CWI in the Netherlands as a successor to the ABC programming language capable of exception handling and interfacing with the Amoeba operating system. An Rossum is Python's principal author, and his continuing central role in deciding the direction of Python is reflected in the title given to him by the Python community, Benevolent Dictator for Life (BDFL). Python 2.0 was released on October 16, 2000, with many major new features including, a cycle-detecting garbage collector (in addition to reference counting) for memory management and support for Unicode. However, the most important change was to the development process itself, with a shift to a more transparent and community-backed process. Python 3.0, a major, backwards-incompatible release, was released on December 3, 2008 after a long period of testing. Many of its major features have also been back ported to the backwards-compatible Python 2.6 and 2.7. In February 1991, Van Rossum published the code (labeled version 0.9.0) to alt.sources. Already present at this stage in development were classes with inheritance, exception handling, functions, and the core datatypes of list, dict, str and so on. Also in this initial release was a module system borrowed from Modula-3; Van Rossum describes the module as "one of Python's major programming units".] Python's exception model also resembles Modula-3's, with the addition of an else clause. In 1994comp.lang.python, the primary discussion forum for Python, was formed, marking a milestone in the growth of Python's userbase. Timeline and compatibility Python 3.0 was released on December 3, 2008.The Python 2.x and Python 3.x series were planned to coexist for several releases in parallel, with the 2.x series existing largely for compatibility and with some new features being back ported from the 3.x series. Python 2.6 was released to coincide with Python 3.0, and included some features from that release, as well as a "warnings" mode that highlighted the use of features that were removed in Python 3.0.Similarly, Python 2.7 coincided with and included features from Python 3.1 which was released on June 26, 2009. Python 2.7 was the last release in the 2.x series;[ parallel releases ceased as of Python 3.2.
  • 2.
    Introduction to Python2016 Python 3.0 broke backward compatibility. There was no requirement that Python 2.x code would run unmodified on Python 3.0. There were basic changes such as changing the print statement into a print function (so any use of print as a statement will cause the program to fail), and switching to Unicode for all text strings. Python's dynamic typing combined with the plans to change the semantics of certain methods of dictionaries, for example, made perfect mechanical translation from Python 2.x to Python 3.0 very difficult. However, a tool called "2to3" could do most of the job of translation, pointing out areas of uncertainty using comments or warnings. Even in an alpha stage, 2to3 appeared to be fairly successful at performing the translation. For projects requiring compatibility with the 2.x and 3.x series, the Python development team recommended keeping one source (for the 2.x series), and producing releases for the Python 3.x platform using 2to3. Edits to the Python 3.x code were discouraged for so long as the code needed to run on Python 2.x. Influences from other languages Python's core syntax and certain aspects of its philosophy are directly inherited from ABC. C provided some of Python's syntax, and the Bourne shell served as the model for an interpreter that becomes interactive when run without arguments. List comprehensions, anonymous functions, lexical closures and the map function are among the major features borrowed from functional languages, primarily dialects of Lisp and Haskell. Generators and iterators were inspired by Icon, and were then fused with the functional programming ideas borrowed into a unified model. Modula- 3 was the basis of the exception model and module system. Release dates for the major and minor versions Python 1.0 - January 1994 Python 1.5 - December 31, 1997 Python 1.6 - September 5, 2000 Python 2.0 - October 16, 2000 Python 2.1 - April 17, 2001 Python 2.2 - December 21, 2001 Python 2.3 - July 29, 2003 Python 2.4 - November 30, 2004 Python 2.5 - September 19, 2006 Python 2.6 - October 1, 2008 Python 2.7 - July 3, 2010 Python 3.0 - December 3, 2008 Python 3.1 - June 27, 2009 Python 3.2 - February 20, 2011 Python 3.3 - September 29, 2012 Python 3.4 - March 16, 2014 Python 3.5 - September 13, 2015
  • 3.