Programming Books C Java PHP Python Learn more Browse Programming Books
Expert Python Programming and over one million other books are available for Amazon Kindle. Learn more
  • List Price: $44.99
  • Save: $4.50 (10%)
In Stock.
Ships from and sold by
Gift-wrap available.
Expert Python Programming... has been added to your Cart
Condition: Used: Good
Comment: Standard used condition. Moderate shelf wear. Binding is tight and pages are clean. NO writing or underlining or highlighting. No remainder marks. No dog ears. Ships from New Jersey. ----FAST shipping!
Sell yours for a Gift Card
We'll buy it for $11.19
Learn More
Sell It Now
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images

Expert Python Programming: Best practices for designing, coding, and distributing your Python software Paperback – September 26, 2008

See all 2 formats and editions Hide other formats and editions
Amazon Price New from Used from
"Please retry"
"Please retry"
$38.30 $23.87

Frequently Bought Together

Expert Python Programming: Best practices for designing, coding, and distributing your Python software + Pro Python (Expert's Voice in Open Source)
Price for both: $72.94

Buy the selected items together
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 84%). Print edition purchase must be sold by Amazon. Learn more.

Shop the new
New! Introducing the, a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Product Details

  • Paperback: 376 pages
  • Publisher: Packt Publishing (September 26, 2008)
  • Language: English
  • ISBN-10: 184719494X
  • ISBN-13: 978-1847194947
  • Product Dimensions: 7.5 x 0.8 x 9.2 inches
  • Shipping Weight: 1.7 pounds (View shipping rates and policies)
  • Average Customer Review: 3.3 out of 5 stars  See all reviews (24 customer reviews)
  • Amazon Best Sellers Rank: #666,298 in Books (See Top 100 in Books)

Editorial Reviews

About the Author

Tarek Ziadé is CTO at Ingeniweb in Paris, working on Python, Zope, and Plone technology and on Quality Assurance. He has been involved for 5 years in the Zope community and has contributed to the Zope code itself. Tarek has also created Afpy, the French Python User Group and has written two books in French about Python. He has gave numerous talks and tutorials in French and international events like Solutions Linux, Pycon, OSCON, and EuroPython.

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

For first look this book is very good for expert and intermediate python programmers.
Stanislav Vitko
The chapters themselves were great from an information standpoint, however, if you didnt follow the chapters in order, you will still come to the same conclusion.
Willie Pritchett
My chief complaint is that the book tries to cover dozens of topics (literally) in only a few paragraphs each.
David Finlayson

Most Helpful Customer Reviews

92 of 95 people found the following review helpful By Alex Martelli on January 18, 2009
Format: Paperback
I was very biased in favor of this book to start with -- I got a free review copy, Tarek is a Python committer like me, and I even found myself quoted by name as early as the intro;-). Throughout the book, I kept *wanting* to like it... there ARE plenty of good and useful materials strewn throughout it... but in the end the overall judgment had to be (slightly) negative, because there are just too many infuriating details -- the book's detailed copyediting was clearly something the publishers badly skimped on. I ran out of steam entering errata on the book's site -- there are just too many small errors and not a few not-so-small ones; I didn't even get started on the many, many cases of awkward or outright incorrect English -- clearly the editors of an author who's not a native speaker of English must put particularly care in that (as a non-native speaker and author myself I'm keenly aware of that) and in this case it absolutely wasn't done.

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 ›
1 Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
19 of 19 people found the following review helpful By Eugene on November 4, 2008
Format: Paperback Verified Purchase
This is the only book I've found that really talks about Python best practices at length. The author definitely has some good ideas about managing and releasing code, as well as taking advantage of Python's more advanced constructs.

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.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
17 of 17 people found the following review helpful By J. Hartley on January 11, 2009
Format: Paperback
[Publisher Packt were nice enough to send me a copy of this, so I'm completely biased, but fortunately I really liked it.]

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 ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
8 of 8 people found the following review helpful By Scott Newman on December 23, 2008
Format: Paperback
After you achieve proficiency with a skill, you start thinking less about how to use the tools and more about what you can do with them. Python is no different; after you are comfortable with the data types, the idioms, OOP, and libraries, you will probably start to think about the soft skills of programming and how you can practice your craft better. When you get to this point, I would highly recommend picking up this book.

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.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Recent Customer Reviews

What Other Items Do Customers Buy After Viewing This Item?