Programming Python Paperback – Jan 10 2011
|New from||Used from|
Frequently Bought Together
Customers Who Bought This Item Also Bought
No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
Getting the download link through email is temporarily not available. Please check back later.
To get the free app, enter your mobile phone number.
Powerful Object-Oriented Programming
About the Author
Mark Lutz is the world leader in Python training, the author of Python's earliest and best-selling texts, and a pioneering figure in the Python community since 1992. He has been a software developer for 25 years, and is the author of O'Reilly's Programming Python, 3rd Edition and Python Pocket Reference, 3rd Edition.
What Other Items Do Customers Buy After Viewing This Item?
Top Customer Reviews
Programing Python is not a typical programming book ' famous 'Hello world' occurs for the first time at page 129. It's more Python
reference book than programming book. Mark covers many, typical, issues that most programers will face during programming. What's good about this book are simple, straight and pragmatic examples ' just the essence. However, sweet things have sometimes bitter taste when not served well. What I don't like within the book are huge code listings. I fell like putting 20 pages of code straight into text is simply waste of space. I prefer to use external resources (CD, source codes from ftp) instead of reading the code within the book (it's like going back to 90's). What I miss in the book is Python/Java integration. I use Python within Java and would like to read more regarding this topic the way Python/C integration is described. Would I recommend this book? If you are looking for Python reference ' yes, if you are looking for Java-Python compendium ' no.
Most Helpful Customer Reviews on Amazon.com (beta)
The amount of information here is gigantic, and includes sample code to some degree on practically every page. I was working from an ebook that O'Reilly gave me access to as a review copy, and I can imagine how unwieldy the actual physical book must be given the 1600+ page count. If you prefer to buy hard copies of books, this is definitely not going to be the quick reference book that you carry around in your back pocket.
Since it's so focused on how to actually use Python code to accomplish specific tasks, the best thing about Programming Python is that it comes from O'Reilly. It shares their usual policy for programming books that you're welcome to reuse the code samples in your own projects, and the publisher also provides errata for all of their books at their website.
If you need a guide on how to do just about anything from creating a GUI to interfacing with an SQL database, Programming Python is a remarkably thorough resource.
Firstly note that this book isn't an introduction to Python, nor is it a reference. The author makes that clear in the preface, instead referring you to the other titles he has written. Also the book covers Python 3.x. Perhaps those who are interested in earlier versions should get the previous edition of the book. On the other hand while there are some changes between the two versions, reading the book wouldn't be a waste of time if you are interested in Python 2.x
I liked this book in the sense that if I looked up a particular topic, I often found his discussion reasonable and could get some useful idiomatic python code to use.
On the other hand, the author intends this book as a tutorial. When I tried to read through it as a tutorial I just found it falling a bit flat. Also at around 1600 pages I doubt I would have the endurance to read through it from beginning to end.
I guess the main problem with the book is that you are interested in one particular area to use Python, say web development, or interfacing with databases this book would probably have insufficient detail, and you would want a specialist book in that area. Also I found the authors writing style somewhat verbose. Another issue is that those people who want to build a GUI for instance may not be interested in his choice of tool Tkinter.
In conclusion, this book does have some useful information, I didn't really like it. While it is hard to pin down the reasons for my dislike, I guess it is because he tries to cover so many topics, that not all of them are covered that well. Also it is not always clear who the audience is, beginners may find his explanations to terse, whereas those who have some familiarity with python may wonder why he is pointing out the obvious. I recommend people who are looking to develop a particular application in python, instead get a book more focused on their area of interest. Those who are new to python should avoid this book also. Those who are looking for a python 3.x refresher should find a book that's a little less weighty.
It's kind of annoying all those people who have received a free book from O'reilly giving it a five star review. Although they disclosed it, it now makes me suspicious as to how many other five star reviews are given by people who enjoy getting free books, and haven't disclosed the fact.
I was interested in learning the language and didn't realize there was a Learning Python so I got Programming Python instead. Luckily, I have experience with a couple of languages so I was able to go through the book and learn what I needed to know. There are many good examples given that explain what you are trying to learn. As with other O'Reilly books, this also has plenty of code to help you through all the topics covered in the book. The index is well done and is great as a reference for later on when you need to look something up in a pinch.
What I found really interesting is Chapter 20 about the integration of Python with C. Seeing that a lot of industry uses C for a lot of operational systems, that chapter was particularly useful as it helps to learn how to interface the two languages together. I have worked primarily with MATLAB throughout school and work. MATLAB is also able to interface with C and it's great, but expensive. Python is a great open source language so it allows anyone on a tight budget to do similar things as MATLAB and the ability to interface with C is great and this chapter will get you going on that.
I highly recommend this book to anyone wanting to delve further into Python. If you have prior programming experience, especailly in OOP, then you should be fine with this. If you don't have that experience, like I said, start with Learning Python. You'll be better off that way.
1. Get a hacksaw and cut through the binding at page 355. Now you have a 3/4" thick book, from the front, containing a deep "introduction" to Python. This nice little rambling tutorial will be too confusing for a beginner, incomplete enough to be worthless as a reference, but very good if you are a PhD Computer Scientist interested in theoretical Object Oriented design, Python Internals, and a particularly confusing dive into python data structures. And parsing Windows directory trees. Read this little book once, and then chuck it into your nearest recycling bin.
2. Make your next hacksaw cut through the binding at page 768. This, oddly enough, produces another 3/4" thick book. Seal the binding with electrical tape. Label this book "Python/Tk GUI Programming" and stick in on your book shelf to collect dust. Reach for it some Sunday you are feeling nostalgic for the days when anyone cared about raw Windows or Linux GUI interfaces, instead of web interfaces.
3. What you have left is a hefty 830-page (!) O'Reilly book on Programming Python. This is the second half of the original book. This will now be on par with the other O'Reilly standards on Java or Perl already on your bookshelf -- measured by pure dead tree weight. This trimmed-down volume is a nice tome on Python client/server programming, Internet protocols, threads, textual data parsing theory and examples, database connections, and still some more Tk GUI stuff (the author can't seem to resist).
The 2010 publication date is a paradox, because this book only covers the new Python v3, which is a major split from Python 2. But every desktop and server in my work environment has Python 2.6 or 2.7 installed, so that's what I'm using. As a professional needing to come up to speed on Python, I need a clean examination of both Python 2 and 3. Certainly there is room for that in a 1600-page book, right? Apparently not. Plus, as a V3 reference, there are gaps in this book because it was published before Python 3 was fully baked.
So again, this book is a poor fit. No matter how you slice it. (rim shot)
Donate this book to a library, school, or sell it at a used book store. Whatever you do, don't pay to ship this beast back to Amazon. This shipping cost will kill you. Get ready for jaw drops from the guys at your local monthly programming group. If nothing else, this book is good --- for some laughs.
From my perspective, this is another book that is way too wordy and one that seems to be an example of why programmers should probably not write texts that are meant to be tutorials.
My favorite author is Larry Ullman and after reading several of his books (about PHP/Mysql), I am finding that there is a lack of well-written books about Python in general in that they don't meet the standard of a text that help you learn a language and then put it to use with very little fuss or detours into arcane matters.
As the other reviewer noted, why does the author place an emphasis on teaching Tkinter which in my view is dated? It seems to be because as an author who is true to the 'Python way,' he defaults to teaching things that are core to the standard library/distribution of the language. I would think it would make sense to spend more time or even equal time on explaining a visual tool such as PyQT that is more friendly, state of the art and that allows for greater productivity.
Also, after investing in this book and a few other Python books because my interests includes GUI programming in general and with Python, I'm learning that these authors are not doing a good job of explaining the pros and cons of what's involved in distributing Python GUI Programs. Evidently, according to many forum entries, attempting to create and then distribute stand-alone Python Gui-based programs is a big deal compared with other options.
I still think the Python Language has the potential to be helpful to me - perhaps in console mode - but the Python books that I've read so far - and I chose authoritative sources - seem to be directed less to practical-minded users and more towards those who have the time for delving into things without asking "what is this useful for."
I have learned that for GUI program development, I will probably be better off using a VS product such as C# for GUI's, Perl for text file processing/editing and some CGI work and PHP for web site applications.
Look for similar items by category
- Books > Computers & Technology > Programming > Languages & Tools > Python
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Object-Oriented Design
- Books > Textbooks > Computer Science & Information Systems > Object-Oriented Software Design
- Books > Textbooks > Computer Science & Information Systems > Programming Languages