Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your email address or mobile phone number.
Expert Python Programming: Best practices for designing, coding, and distributing your Python software Paperback – September 26, 2008
|New from||Used from|
Featured Functional Programming Titles
Check out these featured titles from O'Reilly Media and distributed publishers.
Frequently Bought Together
Customers Who Bought This Item Also Bought
About the Author
If you buy a new print edition of this book (or purchased one in the past), you can buy the Kindle edition for only $2.99 (Save 82%). Print edition purchase must be sold by Amazon. Learn more.
For thousands of qualifying books, your past, present, and future print-edition purchases now lets you buy the Kindle edition for $2.99 or less. (Textbooks available for $9.99 or less.)
If you’re the author, publisher, or rights holder of this book, let ACX help you produce the audiobook.Learn more.
Top Customer Reviews
But let's focus on the GOOD stuff: there's a TON of brief but useful summaries of installing and configuring a zillion useful tools (all open source ones which you can freely download from their various sources), from editors to (kinda;-) "linux emulators" for Windows, from automated build and test frameworks to revision control systems both centralized and distributed, and so on. In most cases you'll want to delve deeper into the documentation of specific tools, and of course there are alternative "competing" tools that can are barely mentioned (or not even mentioned), but the vast collection of simple instructions and author's recommendations is quite useful anyway, in many cases even for tasks that _aren't_ related to Python programming.Read more ›
However, there are way too many editing mistakes in here. I understand that English is not the author's primary language, but he should have gotten an editor or reviewer to fix his grammar and punctuation mistakes. More importantly, there are a lot of typos and obvious bugs in the Python code examples used throughout the book. I would recommend the author follow in the footsteps of The Pragmatic Programmer and ensure that all the code in his book actually compiles and runs.
I've been using Python for a couple of years now, but only on a single project, so while there are parts of it that I know very well, there is doubtlessly a lack of cross-fertilisation in the things I am exposed to. So I was looking forward to this book.
Surprisingly, for such a straightforward-sounding title, it is not at all what I expected.
What I expected was analyses and illustrations of using Python's more powerful features: dynamic designs; creating classes on the fly; functional programming styles; closures and metaclasses.
Sure enough, there is an early couple of chapters devoted to advanced language features. First up, iterators, and generator expressions, and then the .send, .throw and .close methods on a generator, which induce the yield statement to return values or raise exceptions. This is then used to handily illustrate coroutines as a method of co-operative multi-tasking without the calamity involved with getting all multi-threaded. It's exactly the sort of feature I'd pondered writing for myself for a personal project, oblivious that the language provides it out of the box.
Other low-level topics covered include the indispensable itertools module, interesting uses of function decorators, best practices for subclassing built-in types, sensible use of descriptors and properties, understanding method resolution order and using super, the often-overlooked slots, and finally meta-programming and metaclasses.
Interestingly, this list has only one item of overlap with my expectations.Read more ›
It's not a book about how to program in Python; many great titles already cover that topic well. Instead, it's a book about how to program Python better. It assumes you already are comfortable with the ins and outs of Python: data types, inheritance, object-oriented Python techniques, etc. When you are ready to take your skills to the next level, start here. These are the techniques you'll need to know to flourish on a software development team: naming conventions, "Pythonic" programming, writing good documentation, test driven development, the development life cycle, profiling and optimizing your code, working with version control, etc.
When I set out to learn many of these topics, I spent hours scouring blog postings, reading through news groups, following link after dead link. I'm astounded that someone has put all this knowledge into a single volume; I would have paid hundreds of dollars for this information a year ago.
Some of the high points of the book from my experience running a software development group are the documentation, test driven development, and profiling chapters.
If you want to be good, not just proficient, at Python, take a look at this book. It's bound to become a valuable reference in my library.
As one reviewer pointed out, it's probably not a good book for someone who is already an expert at Python, but if you are looking to become one, I'd start here.
Most Recent Customer Reviews
Exactly the right topic, but having been published in 2008, the book is unfortunately dated. Needs to be revised for python3 and for either unittest or pytest (or both).Published on July 20, 2013 by I M Hidden
For first look this book is very good for expert and intermediate python programmers.
You can find some important topics (like how to distribute your software) what can't be... Read more
The code is almost unreadable due to the fact that there is no indentation.
I do not recommend buying in this version.
I've read the first several chapters, and its been good so far except all the code examples lack indentation. Read morePublished on November 27, 2011 by Brendan Chandler
I have been programming in python for about 7 years, mainly web-related stuff, but (like most Python programmers) I use Python for everything from desk calculator to sh/csh... Read morePublished on November 18, 2010 by tdir-tdir
The problem with a lot of these working-professional technology books is figuring out who the audience is, this one is no different but perhaps more challenging because the... Read morePublished on November 8, 2010 by MedIT
There's a healthy market of books describing the basics of programming and programming languages. And there are plenty of books act as reference material once you've learned the... Read morePublished on August 26, 2010 by Craig Maloney
I really enjoyed reading this book despite some places with awkward language (at least to me), and I knew from the start that I would like it. Why? Read morePublished on July 31, 2010 by Florin Dinu
I have always enjoyed the books I have read from Packt Publishing and Expert Python Programming by Tarek Ziadé is no exception. Read morePublished on July 21, 2010 by Andrei Mouravski