This appendix summarizes prominent changes introduced in Python releases since the first edition of this book. It is divided into three sections, mostly because the sections on 1.6 and 2.0 changes were adapted from release note documents:
Changes introduced in Python 2.0 (and 2.1)
Changes introduced in Python 1.6
Changes between the first edition and Python 1.5.2
Python 1.3 was the most recent release when the first edition was published (October 1996), and Python 1.6 and 2.0 were released just before this second edition was finished. 1.6 was the last release posted by CNRI, and 2.0 was released from BeOpen (Guido’s two employers prior to his move to Digital Creations); 2.0 adds a handful of features to 1.6.
With a few notable exceptions, the changes over the last five years have introduced new features to Python, but have not changed it in incompatible ways. Many of the new features are widely useful (e.g., module packages), but some seem to address the whims of Python gurus (e.g., list comprehensions) and can be safely ignored by anyone else. In any event, although it is important to keep in touch with Python evolution, you should not take this appendix too seriously. Frankly, application library and tool usage is much more important in practice than obscure language additions.
For information on the Python changes that will surely occur after this edition’s publication, consult either the resources I maintain at this book’s web site (http://rmi.net/~lutz/about-pp.html ...