|
| Login | Sign up | Settings | My Wish List |
![]() | Python Essential Reference (3rd Edition) (Developer's Library) by David M. Beazley ISBN-10: 9780672328626 ISBN-10: 0-672-32862-3 ISBN-13: 9780672328626 ISBN-13: 978-0-672-32862-6 Paperback 2006-03-02 Sams Find Lowest Price | |
Editorials | ||
Product Description Python Essential Reference, 3rd Edition, is a comprehensive reference to the Python programming language. The focus of this latest edition is to add coverage of significant new features and new library modules added to the language over the past five years. Clearly written with concise organization, the new features covered include new style classes, unification of types and classes, xmlrpclip, intertools, bz2 and optparse, making it the most up-to-date Python book on the market. | ||
Amazon.com Review Every so often a book comes along that makes you ask yourself, "Gee, when was the last time I had my eyes checked?" David M. Beazley's Python: Essential Reference is just such a book. Condensing thousands of pages of Python online documentation into a compact 319-page softcover, Beazley and his editors used the old-college trick (often performed in reverse) of dickering with the font size to meet a putative page-limit requirement. The result is a truly condensed product fit for the occularly well-adjusted (nota bene). Beazley's subject is Python, a full-featured, freely-redistributable, POSIX-compliant (platforms include Linux, Unix, Macintosh, and Windows) scripting language that is based on object-oriented design principles. As advertised, Beazley's source release (1.5.2) is available from an unfortunately slow server at www.python.org. The installation under Linux (Redhat 5.2) proceeded without incident. Beazley holds true to his catalogic purpose: fully 230 pages are formatted as technical appendices and indices covering the standard litany: built-in function syntax, database features, OS-level interfaces, Internet interfaces, and compiling/profiling/debugging. All references are fully annotated and illustrated with example source code that runs from a couple of lines to a couple of pages. In lock step with competing scripting languages, Python is extensible and embeddable in C and C++, and with blitzkrieg efficiency, Beazley summarizes these crucial practical issues in the final 30 pages. Python users who are tired of chasing questions through hyperlinked online documents will benefit from the expansive random-access index. Python the book captures the orderliness of Python the language. Beazley begins with an 86-page précis of Python in the fashion of Kernighan and Ritchie: too brief for a newbie tutorial but enough to propel old hands into a scripting language that aspires to the elegance of a compiled language. Indeed, it is a byte-compiling language. The line bytecode=compile("some_python_script",'','exec')) creates 'bytecode' as a token executed by exec bytecode. But a five-minute investigation through Beazley's book does not describe how 'bytecode' can be written into a separate executable file. If writing the byte-compiled code to a file is not possible, Python suffers from the limitations of other scripting languages: the executable is the source and cannot be hidden from the user, at least not without some difficulty. Despite its extensibility, embeddability, and pleasing architecture, Python is like other scripting languages: appropriate for solving small nonproprietary problems. Those familiar with more established scriptors like Perl may ask, "Why Python?" Unlike Perl, Python is a product of the fully object-oriented (OO) era, and its constructs reflect design principles that aspire beyond keystroke shortcuts of the succinct-but-often-arcane Perl. Python creator Guido van Rossum cleansed Perl's idiosyncracies and objectified basic data structure, data manipulations, and I/O. With Python, OO is so intrinsic that learning Python is equivalent to learning OO. The same cannot be said of Perl. Unfortunately, comparisons with other languages are missing from Beazley's book. Van Rossum, in an embarrassingly self-serving foreword, preemptively asserts that we readers need "neither evangelizing nor proselytizing"--after all, we already own the book--but we do need galvanizing and we don't find it. Specifically, we need a response to the oft-repeated wisdom that new computer languages are only worth learning if they teach us to organize our thinking along new lines. Scripting languages, however, are for quick and dirty projects: quick to write, easy to hack, and ultimately disposable. The essential tension created by van Rossum and friends is between the elegance of object-oriented principles and the utility of a quick-hacked script. Sadly, the tension remains unresolved in Beazley's reference. There is little to convince us that Python has earned its place in the firmament by changing our thinking. But Beazley has given us much to get us going if we have already taken the leap of faith. --Peter Leopold | ||
Reviews | ||
What I used to think a nutshell book was about! I love the book. Use it with Python in a Nutshell. Use the Nutshell as a more comprehensive reference and this book to get exactly what I need when I have a general idea of what is needed. I see Python Essentials as more of a 'nutshell book' than the actual nutshell book. It is clear and concise and I find the print size to be very acceptable. The book is a maverick when it comes to being able to compare different approaches/elements. It will not do it for you, but since it is so precisely laid out, it is easy to think in terms of: "If I used this then I could do this; If I used that then I could do that, but not this, etc." If you have a basic background in python or other language, you will likely be able to frame up your ideas/knowledge into specifics and start coding to learn more or if you are already an accomplished programmer you can check and refine code in progress or established code projects. | ||
Outstanding Reference I say Outstanding Reference, because that's what this book is. While there are examples, they are short and concise - this is not a "how to" book (though the introduction provides an excellent overview). Rather, this is a text to keep alongside a book like Learning Python. It's dimensions are smaller than your typical computer book, so it fits nicely on my desk. Also, the index is the best you'll find (Dave actually generated it from a Python script). It's faster than looking stuff up online. | ||
Perfect programming language reference This little book isn't missing a thing! It's extremely well organized; I find it faster to get answers from this book than from the Internet. Can't say that too often! | ||
Conciese and informative book Very concise and precise information. I would recommend for anyone who wants advance book on python for reference and learning. | ||
Nicely organized; Excellent index; Later chapters go into immense detail This book is a highly detailed reference to the Python language. The introductory chapters build on one another and give the reader a decent introduction to the language. The later chapters need not be read sequentially as they are a reference on more advanced features. The book has superb coverage of distutils, C extensions, network I/O, and introspection. The index is well organized so you can find text on obscure, subtle concepts easily. Need to know how to raise an IOError in C? Not a problem, it's in there. Need to know how to quickly generate a tuple from C? Not a problem, it's in there. Need to know how to split apart or join paths and filenames in a platform-independent way? It's in there too. How about creating a memory mapped file? Or parsing a date? Or resolving the IP address of a hostname? Parsing a python string? Running a python expression as a string? Grabbing the caller's call stack? All of these nifty and possibly dangerous features are all covered in this wonderful book. Normally, I'm a fan of O'Reilly books but O'Reilly's Programming Python (OPP) is disappointingly basic, and you'll quickly outgrow it. I found OPP very unhelpful as a reference for writing large, scientific simulations in Python. In such situations, the data sets are often large, and thus, one must be careful not to gratuitously waste memory with range() when looping over several arrays in the same loop. For example, there is no mention of the xrange construct, which creates a generator object used for incrementally generating numbers over a range. However, it is extremely rare I find an omission in Beazley's Python, and the omission always involves an extremely obscure and uncommon feature. | ||