- Paperback: 752 pages
- Publisher: O'Reilly Media; 3 edition (November 1, 2007)
- Language: English
- ISBN-10: 0596513984
- ISBN-13: 978-0596513986
- Product Dimensions: 7 x 1.5 x 9.2 inches
- Shipping Weight: 2.2 pounds
- Average Customer Review: 3.9 out of 5 stars See all reviews (371 customer reviews)
- Amazon Best Sellers Rank: #726,045 in Books (See Top 100 in Books)
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 mobile phone number.
Learning Python, 3rd Edition 3rd Edition
Use the Amazon App to scan ISBNs and compare prices.
Customers who bought this item also bought
What other items do customers buy after viewing this item?
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 is also the author of O'Reilly's Programming Python, 3rd Edition and Python Pocket Reference, 3rd Edition. Mark began teaching Python classes in 1997, and has instructed more than 200 Python training sessions as of 2007. Mark also has BS and MS degrees in Computer Science and 25 years of software development experience.Whenever Mark gets a break from spreading the Python word, he leads an ordinary, average life with his kids in Colorado. Mark can be reached by email at , or on the web at http://www.rmi.net/~lutz.
If you are a seller for this product, would you like to suggest updates through seller support?
Top Customer Reviews
First of all, I've read many of the other well reviewed, up-to-date, Python books (yes, all of them were shorter), and being new to Python, I ended up spending most of my time searching online trying to fill in the gaps that the other authors failed to fill in. With this book you don't need to reference anything else because the author does a great job of answering every question. You can tell he's dedicated his life to teaching Python and knows what problems his readers will run into.
While this books is long, it doesn't feel long. It's not just page after page of code samples. Each concept comes with a few code samples and is followed up by very well-written, clear explanations so it's actually a fairly quick read (for a 1600 page book). Does he repeat himself as other reviewers have noted? Yes, but it feels like when he does it's purposeful.
Even though you often hear that Python is easy to learn, it's an incredibly deep language that requires time and effort. I believe that by having read this book that I'm starting out far ahead of other new Python programmers, I appreciate the language even more and I'm very comfortable even with Python's advanced topics.
Speaking of which, readers will need to have at least some previous programming experience to make sense of this book, since it relies heavily on jargon that complete beginners are unlikely to understand. If you don't already know what functions, methods, strings, and such are (and experienced programmers here will laugh, but when you are first starting out, such terms can be confusing!) the author isn't going to explain, or if he does, it will be 200 pages later in a different section.
A more minor complaint is the dry and formal, textbook-like voice of the author. I don't need to be constantly entertained while learning, but I do need to have fun, and a little humor and personality go a long way.
I'm over a hundred pages in, and I give up. I need to actually program while learning to program. I was looking for a beginner friendly, tutorial style book that would encourage exploration and test my knowledge with quizzes. This isn't it. I think I will go back to my severely outdated copy of Beginning Python by Magnus Lie Hetland to brush up on basic program construction, then use this book as a reference as I get deeper into programming with Python.
This book probably has more content about Python than you will ever need. The problem is, it makes for very dense reading as Mark tries to appeal to too broad an audience, both newbies to programming and veterans. This means he laboriously explains all the basics AND all of the minute details of the language. This means learning basics like methods and classes takes many more hours of reading than it should.
Mark's style is: when in doubt to be verbose. If there are three ways to do something in Python, all three methods are explained in detail (sometimes multiple times) and the "pythonic" or "best practice" often saved until all are explained in full detail. For example, Mark spends multiple pages on the difference between __str__ and __repr__ (two methods you can override for class output) across several chapters, rather than just concisely explaining to use __repr__ most of the time, explain the difference and maybe a sidebar/appendix on the minutia of why "most of the time" you should just use __repr__ but there are a few exceptions.
Going back, I realized another reviewer summed it up perfectly -- "It's like learning the English language by reading a dictionary."
DO buy this book if you want to have a reference dictionary that has ever minute detail about Python.
DON'T buy this book if you are new to the language and want to get going quickly.
I've moved to just writing the code and following online tutorials, and when I run into a problem I don't understand diving into the book to try to find the reasons.
I strongly recommend this book for anyone that is absolutely new to programming and have no ambitions to be a programmer, but only yo learn to use code as a tool.