Index of /class/Python_web

This directory contains the latest Python 2.X and 3.X releases.
Install these for use in class, unless your computer already has 
a usable Python installed (you'll learn how to tell soon).
Web version users: see web_README.txt for download notes.

-------------------------------------------------------------------------

QUICKSTART FOR WINDOWS:

  To install Python 3.5: run Python-3.5\Install\Windows\python-3.5.0.exe
  To install Python 2.7: run Python-2.7\Install\Windows\python-2.7.10.msi

WHICH VERSION TO USE:

  Install and use 3.5, unless your organization or work requires 2.X.
  Install and use 2.7, if your organization or work requires 2.X.

  Python 3.X is not backward compatible with existing 2.X software.
  In general, if you'll be using 2.X-based systems after the class, 
  you'll probably want to use and focus on 2.X during the class; if
  not, 3.X is a viable and recommended option for both this class 
  and new code today.  Within each line, the highest numbered release 
  is also generally preferred, unless you're sure you will need to 
  use an older release after the class.

  For more on the Python 2.X versus Python 3.X choice, see the 
  start of the Preface page of the class workbook, as well as: 
  http://wiki.python.org/moin/Python2orPython3.

WINDOWS USERS:

  To install, click on the ".exe" or ".msi" file of the version you wish 
  to use, and confirm all prompts.  For instance, to install 3.5, click
  to run this folder's "Python-3.5\Install\Windows\python-3.5.0.exe".

  The install executables with ".amd64" at the end of their names 
  are for 64-bit systems (not itanium), and the others are 32 bits; 
  if you're not sure which you have, use the executable without the 
  ".amd64". 
  
  After installs, Python shows up in your "Start" menu, and can be 
  run from a "Command Prompt".  On Windows 8, Python "Start" menu 
  items show up in an ""Apps" screen group and run in desktop mode;
  on Windows 10, they're in the revived start/apps menu.

  Note: Windows XP support was dropped as of Python 3.5.  If you're
  on XP and wish to use Python 3.X, use the Python 3.4 installers
  in the "extras\Python-older-releases" folder here.
 
MAC USERS: 

  The story on Mac Tkinter support (required for the IDLE GUI) is 
  a bit convoluted today, unfortunately.  See this page for help:
  https://www.python.org/download/mac/tcltk/.  If Python and IDLE
  run without installs for you, you need not install anything.

LINUX USERS: 

  You probably already have python installed; try a "which python" 
  or "which python3" to see where it is.  IDLE may be a built-in
  command, or be run by manual Python command "python -m idlelib.idle".

  To install tkinter support on Ubuntu Linux, try a command like:
  "sudo apt-get install python3-tk tk".  In the worst case, you can 
  install by building from the Source with a "config" and "make".

OTHER USERS:

  You can find Python for just about every platform (including 
  Android and iOS), but installs vary too widely to document here. 

-------------------------------------------------------------------------

RECENT UPDATES

* September, 2015: Added new 3.5 installers.

* June, 2015: Added latest 3.4 and 2.7.10 installers.

* October, 2013: Added latest 3.3.2 and 2.7.5 installers,
  plus Pillow for 3.3/Windows.

* October, 2012: added Python 3.3.0 final release,  
  Windows and Mac installers, plus source distribution. 
  Also added pylauncher, portable python, and the fast
  PyPy JIT implementation in extras.  Deleted older 
  Python versions: available at python.org.

* July, 2012: added Python 2.7.3, 3.2.3 and 3.3beta1.
  Split /Python into cd + web versions (web has no installers).

* January, 2011: added Python 2.7, and Python 3.2 (RC1).
  See the README files in these directories if you wish to use
  the latest and greatest Python for the class.

-------------------------------------------------------------------------

OLDER DOCS (dated and optional reading):

This directory contains Python 2.7, Python 3.3, and older Python install
packages, fetched from www.python.org.  Packages for other platforms 
are available in the "Downloads" section of that web site.

Unless you've already installed a Python version which you must use, 
install either the 2.7 or 3.3 packages here for the class.  

To install, find the version's ".msi" file (usually in subfolder
"Install\Windows" of the desired version's folder) and double-click 
on its icon. For example, to install Python 2.7, click on the ".msi" 
file in the Python-2.7\Install\Windows folder to run the self-installer.


Which version to install?
-------------------------

If you won't be using Python 2.X libraries or tools after the class,
you are free to install the Python 3.3 package here for use in class. 
Otherwise, you probably want to install the Python 2.7 package here.

If you don't know what your post-class requirements will be, the short 
story is that 2.7 is still required for many 3rd-party libraries and
tools; 3.3 is a new and incompatible version of the language that some
see as an improvement, but which is not yet as broadly supported or used.

More generally, Python 3.X was released in late 2008, but has yet to be 
as widely adopted as 2.X as of late 2012. It probably won't be as widely 
used or have as broad 3rd-party library support for some time.


If you're still not sure which line to use, here are a few notes:

--Unless you have a strong preference for Python 3.X, Python 2.7
  may be best for use in the class.  We will discuss 3.X changes in
  class, but nearly all coding exercises and demos will be done in 2.7.

--Python 2.7 is the last in the 2,X line, at least per official 
  pronouncement of Python-dev core developers (including the BDFL).

--Python 3.0 was new, incompatible, and very slow for I/O.  It generally
  shouldn't be used, given the 3.1 improvements and fixes.

--Python 3.1 fixed the speed issue in 3.0, and added a handful of new
  features to 3.0; it should generally be always used instead of 3.0.

--Python 3.2 improved on 3.1, and 3.3 is better still with major new
  string memory usage optimizations, a new Windows launcher, and module
  namespace packages.  Use the latest in the 3.X line if possible.

For more on recent 2.X and 3.X changes, please visit www.python.org.