Python Essential Reference (4th Edition)

Category: Operating Systems
Author: David M. Beazley
This Year Stack Overflow 2
This Month Stack Overflow 1

About This Book

Python Essential Reference is the definitive reference guide to the Python programming language — the one authoritative handbook that reliably untangles and explains both the core Python language and the most essential parts of the Python library.

Designed for the professional programmer, the book is concise, to the point, and highly accessible. It also includes detailed information on the Python library and many advanced subjects that is not available in either the official Python documentation or any other single reference source.

Thoroughly updated to reflect the significant new programming language features and library modules that have been introduced in Python 2.6 and Python 3, the fourth edition of Python Essential Reference is the definitive guide for programmers who need to modernize existing Python code or who are planning an eventual migration to Python 3. Programmers starting a new Python project will find detailed coverage of contemporary Python programming idioms.

This fourth edition of Python Essential Reference features numerous improvements, additions, and updates:

  • Coverage of new language features, libraries, and modules
  • Practical coverage of Python's more advanced features including generators, coroutines, closures, metaclasses, and decorators
  • Expanded coverage of library modules related to concurrent programming including threads, subprocesses, and the new multiprocessing module
  • Up-to-the-minute coverage of how to use Python 2.6's forward compatibility mode to evaluate code for Python 3 compatibility
  • Improved organization for even faster answers and better usability
  • Updates to reflect modern Python programming style and idioms
  • Updated and improved example code
  • Deep coverage of low-level system and networking library modules — including options not covered in the standard documentation


by anonymous   2017-08-20

There are quite a few good books online. These have a broad scope, similar to O'Reilly's "Learning Python":

  • Dive into Python by Mark Pilgrim
  • How to think like a computer scientist: Learning with Python by Jeffrey Elkner, Allen B. Downey, and Chris Meyers
  • Python Programming (WikiBook)
  • The Python Tutorial is the "official" introduction to the language maintains two lists of for learning python, depending on your level of programming expertise:

  • Python for Non-programmers
  • Python for Programmers

I highly recommend "Python Essential Reference" by David Beazley. You might find this sufficient if you're an experienced programmer and want a concise and comprehensive overview of the language. If you're a novice programmer this probably won't provide enough hand-holding. While I learned Python from other books, this is—by far—the most useful python book I own. Some notes:

  • This is a reference book not a tutorial
  • The first 125 pages are a complete overview of the language. It's not a tutorial, but it covers the language from top to bottom
  • If you're an experienced programmer, this should be enough to learn the language
  • If you're a novice programmer, start with a different tutorial
  • The rest of the book is a comprehensive and extremely useful reference
  • The 3rd edition covers up to python 2.4, but not beyond.
  • The 4th edition is due for release in July 2009

Note: I originally posted the same/similar answer to:

I was asked to put a copy of my answer here.

by anonymous   2017-08-20

I've recently had to make a similar transition for work reasons, and it's been pretty painful. For better or worse, Python has a very different philosophy and way of working than Perl, and getting used to that can be frustrating. The things I've found most useful have been

  • Spend a few hours going through all the basics. I found the official tutorial quite good, if a little dry.
  • A good reference book to look up basic stuff ("how do I get the length of a string again?"). The ones I've found most useful are the Python Pocket Reference and Python Essential Reference.
  • Take a look at this handy Perl<->Python phrasebook (common tasks, side by side, in both languages).
  • A reference for the Python approach to "common tasks". I use the Python Cookbook.
  • An ipython terminal open at all times to test syntax, introspect object methods etc.
  • Get pip and easy-install (to install Python modules easily).
  • Learn about unit tests fast. This is because without use strict you will feel crippled, and you will make many elementary mistakes which will appear as runtime errors. I recommend nose rather than the unittest framework that comes with the core install. unittest is very verbose if you're used to Test::More.
  • Check out Python questions on Stack Overflow. In particular, Python - Things one MUST avoid and Python 2.x gotcha’s and landmines are well worth a read.

Personally, I found Dive Into Python annoying and patronising, but it's freely available online, so you can form your own judgment on that.