Start reading Python Essential Reference (4th Edition) on your Kindle in under a minute. Don't have a Kindle? Get your Kindle here.

Deliver to your Kindle or other device

 
 
 

Try it free

Sample the beginning of this book for free

Deliver to your Kindle or other device

Read books on your computer or other mobile devices with our FREE Kindle Reading Apps.
Python Essential Reference (4th Edition)
 
 

Python Essential Reference (4th Edition) [Kindle Edition]

David M. Beazley
4.3 out of 5 stars  See all reviews (28 customer reviews)

Digital List Price: $39.99 What's this?
Print List Price: $49.99
Kindle Price: $15.92 includes free wireless delivery via Amazon Whispernet
You Save: $34.07 (68%)

Formats

Amazon Price New from Used from
Kindle Edition $15.92  
Paperback $28.60  


Editorial Reviews

Product Description

This is the eBook version of the printed 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

 

About the Author

David M. Beazley has been programming Python since 1996. While working at Los Alamos National Laboratory, he helped pioneer the use of Python with scientific computing software. Through his company, Dabeaz LLC, he provides software development, training, and consulting related to the practical use of dynamic programming languages such as Python, Ruby, and Perl, especially in systems programming. He is author of all previous editions of Python Essential Reference, and was contributing author of Steve Holden’s Python Web Programming.  He is a member of the Python Software Foundation.



Product Details

  • Format: Kindle Edition
  • File Size: 23613 KB
  • Print Length: 717 pages
  • Simultaneous Device Usage: Up to 5 simultaneous devices, per publisher limits
  • Publisher: Addison-Wesley Professional; 4 edition (June 29, 2009)
  • Sold by: Amazon Digital Services
  • Language: English
  • ASIN: B002EF2AQ6
  • Text-to-Speech: Enabled
  • Average Customer Review: 4.3 out of 5 stars  See all reviews (28 customer reviews)
  • Amazon Best Sellers Rank: #35,384 Paid in Kindle Store (See Top 100 Paid in Kindle Store)
  •  Would you like to give feedback on images?


 

Customer Reviews

28 Reviews
5 star:
 (19)
4 star:
 (5)
3 star:    (0)
2 star:
 (2)
1 star:
 (2)
 
 
 
 
 
Average Customer Review
4.3 out of 5 stars (28 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

50 of 52 people found the following review helpful:
5.0 out of 5 stars An excellent reference to get the maximum out of Python, August 14, 2009
The author of Python Essential Reference is David Beazley, who among other occupations created the open-source SWIG tool and the WAD mixed-languages debugger. His background is pervading throughout the book, in which the reader gets a clear sense of what is happening behind the Python programming language and learns how to use it efficiently instead of considering it as a black box.

The first 20 pages give an overview of the language and although it is called a "tutorial introduction", it should be understood that its purpose is for a programmer to see what Python looks like, and not for a novice to get their first programming course.

The next 156 pages offer a thorough review of the language and its environment. This is a very interesting part and should not be skipped even by people who already know Python. I said "review" but an experienced programmer should be able to learn the language by reading those chapters and putting them into practice with extra exercises.

Instead of simply describing the language, the author also hands out tricks of the trade, showing how to acquire good coding habits while using an sensible approach regarding the performance, which is often essential in a dynamic language. The fourth edition is focusing on version 2.6 but offers some historical perspective by pointing out several elements that were recently improved, or which are about to change in upcoming versions.

The first part of the book concludes with useful recommendations on program debugging and profiling.

The second part contains 388 pages and goes through the Python library, presenting the essential modules together with examples, notes and advices. After all, this is a reference, so we shouldn't expect any less.

Last but not least, the third part comprises 30 pages of precious information on Python/C interface for extending the language or embedding it in larger applications.

An appendix introduces version 3 for those who are ready to make the leap.

For the sake of completeness, if I were to make any reproach or wish for improvement, it would probably be on the overall presentation (and would be a very minor one). The style in the code excerpts could be more consistent in the first part of the book, and the second part could do with more emphasis on the ... reference ... character of the text, perhaps by providing a more convenient way to navigate through the different modules and by using more obvious styles for the different parts. I sometimes had the impression of reading a long listing of modules and methods instead of looking through a reference book. While the contents is superior to other references like "Python in a Nutshell", I found it easier to retrieve what I needed with the latter - a bit on the brink of obsolescence today - than I do now with the former.

I would definitely recommend this book to anyone desirous of improving their programming skills in Python, or having to write optimized code because performance is an issue.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


27 of 29 people found the following review helpful:
5.0 out of 5 stars The Best Reference for the Experienced Programmer, August 4, 2009
By 
Amazon Verified Purchase(What's this?)
I've worked in C, C++, and Java, and for the last six years in Python. This is the book I've been looking for. If you want to know how the language works under the covers and how to best use it, this book is invaluable. The explanation of co-routines and generators is the best I've seen.

The presentation is logical and concise, and the examples are realistic. I've read many Python books, but this is the one that will stay on my desk.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


17 of 17 people found the following review helpful:
5.0 out of 5 stars Probably the best "second book" on Python, March 3, 2011
Amazon Verified Purchase(What's this?)
David Beazley's "Python Essential Reference, Fourth Edition" covers Python 2.6 and 3.0, and is thus quite (though not completely) up to date. The author has in essence chosen to present the intersection of the two branches, i.e. omit features of Python 2 that have been removed from Python 3. This volume's pace is rapid and the coverage is quite extensive, so this probably shouldn't be the first Python book one reads.

The Good: this book is approximately 700 pages long; even so, it's not that bulky and is therefore quite manageable. It is split into two parts: 200 pages on the language and roughly 400 pages on the library. The first part is very good, while the second part is unrivaled as of this writing (though this may change when Doug Hellmann's "The Python Standard Library by Example" comes out). Thus, the reader essentially gets two books for the price of one: the part on the language can be read linearly, while the library part can be read in chunks as the need arises. The book also includes an extremely useful Index which is approximately 80 pages long (and also contains unexpected entries, e.g. "chicken, multithreaded, 414"). Moving on to the material covered: Beazley includes an appendix on Python 3-specific concepts, but also offers useful advice on Python 3 throughout the main text (e.g. "To keep your brain from exploding, encoded byte strings and unencoded strings should never be mixed together in expressions"). I particularly enjoyed the sections on decorators, generators, and coroutines in the chapter on functional programming. Beazley has also posted on his website two tutorials on these topics that nicely complement the material in the book. Similarly, the chapter on multiprocessing and threading is impressive, and forms a nice set with the author's talk slides on the Global Interpreter Lock -- it's important to note that Beazley used to be a professor of Computer Science. Probably the most significant aspect of this book is the abundance of examples. I'm pretty sure the phrase that is most often repeated in this volume is "Here's an example". The examples are always enlightening, sometimes clever, but never obfuscating. Finally, the writing may not be flawless but overall it is quite good. Of course, any reference text is bound to be somewhat dry, but within the confines of the genre Beazley has truly done wonders: he has a personality and he's not afraid to show it. This jovial aspect of the writing is present when giving advice (e.g "Try not to mix threads and multiprocessing together in the same program unless you're vastly trying to improve your job security", p. 435), or just for its own sake (e.g. "If you change the code to only poll after every six-pack of beer", p. 469)

The Bad: chapter 1 is fun to read but it is deceptively titled ("A Tutorial Introduction"). For example, Beazley uses a decorator and the seek file method, without explaining anything about either of them. Of course, this book isn't supposed to be introductory, so strictly speaking my quibble is with the first chapter's title, not its content. The biggest problem I encountered while reading the book was the page layout in the majority of Part II: a module is introduced and then its methods are described by showing a name in bold, followed by a description on a separate line. This confused me to no end: whenever I saw a name, for a split second I would wonder if I should look up or down to find the description. This could have been avoided if the more standard tabular form had been chosen more often: name on one column, description on the other. Of course, I understand that this would have increased the size of the book considerably, perhaps prohibitively so. Moving on to more detailed complaints: for some modules (e.g. struct, shutil, os.path) Beazley gives a listing of the contents but, unfortunately, no corresponding examples. To be fair, he does use os.path functionality in a number of places throughout the book (though the index is no help tracking them down), just not in the appropriate section. Delving into even more detail: any book of this breadth is bound to contain minor errors. Here's a selection of such slips, all drawn from the same chapter: in some cases the prose is obscure, e.g. "A method is a function that performs some sort of operation on an object when the method is invoked as a function." (p. 33); sometimes a statement is contradicted in a later chapter, e.g. we read on p. 39 that "Sequences represent ordered sets of objects indexed by non-negative integers and include strings, lists, and tuples." only to find out on p. 68 that "Negative indices can be used to fetch characters from the end of a sequence."; similarly, on p. 45 we read that for dictionary methods like keys() "in Python 3 the result is an iterator that iterates over the current contents of the mapping", while on p. 632 we learn that "these methods return so-called view objects".

These days, the aspiring intermediate Python programmer doesn't have too many books to choose from: Martelli/Ravenscroft/Ascher's "Python Cookbook" is out of date, Ziade's "Expert Python Programming" contains too much material that is not Python-specific, and Alchin's "Pro Python" is only ~ 250 pages long. Thus, for the time being Beazley's "Python Essential Reference" is the obvious choice for a second book on Python. All in all, four and a half stars.

Alex Gezerlis
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews











Only search this product's reviews



More About the Author

I've been programming computers of various sorts for more than 25 years. For the most part, I would consider myself to be a die-hard C programmer although I have to admit that I also really like assembly language programming. Oddly enough, however, I'm probably best known for my work with the Python programming language. I first came across Python in 1996 when I was writing high-performance software for supercomputers. At the time, I became interested in using it as a control-language for interfacing with software components written in C. As a result, I wrote some tools to simplify this process and became fairly active in the Python community. Python is definitely my language of choice for doing just about everything that would be annoyingly tedious to do in C.

What Other Items Do Customers Buy After Viewing This Item?


Popular Highlights

 (What's this?)
&quote;
When you use Python interactively, the special variable _ holds the result of the last operation. &quote;
Highlighted by 20 Kindle users
&quote;
the contents of a tuple cannot be modified after creation (that is, you cannot replace, delete, or append new elements to an existing tuple). This reflects the fact that a tuple is best viewed as a single object consisting of several parts, not as a collection of distinct objects to which you might insert or remove items. &quote;
Highlighted by 18 Kindle users
&quote;
Because tuples are immutable, they use a more compact representation where there is no extra space. &quote;
Highlighted by 16 Kindle users

Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 

Your tags: Add your first tag
 

Customer Discussions

This product's forum
Discussion Replies Latest Post
descriptions are for *much* earlier editions of this book 1 Sep 9, 2009
See all discussions...  
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
   
Related forums



So You'd Like to...


Create a guide

Look for Similar Items by Category


Look for Similar Items by Subject