
|
 |
|
Learning Python (Help for Programmers)x$22.93
    (125 reviews)
Best Price: $29.95 $22.93
Thoroughly updated, Learning Python, Second Edition introduces the basic elements of the latest release of Python 2.3 and covers new features, such as list comprehensions, nested scopes, and iterators/generators. Beyond language features, it also includes new context for less-experienced programmers, including fresh overviews of object-oriented programming and dynamic typing, new discussions of program launch and configuration options, new coverage of documentation sources, and more. There are also new use cases throughout to make the application of language features more concrete. The first part of Learning Python gives programmers all the information they'll need to understand and construct programs in the Python language, including types, operators, statements, classes, functions, modules and exceptions. The authors then present more advanced material, showing how Python performs common tasks by offering real applications and the libraries available for those applications. Each chapter ends with a series of exercises that will test your Python skills and measure your understanding. The authors of Learning Python show you enough essentials of the Python scripting language to enable you to begin solving problems right away, then reveal more powerful aspects of the language one at a time. This approach is sure to appeal to programmers and system administrators who have urgent problems and a preference for learning by semi-guided experimentation. First off, Learning Python shows the relationships among Python scripts and their interpreter (in a mostly platform-neutral way). Then, the authors address the mechanics of the language itself, providing illustrations of how Python conceives of numbers, strings, and other objects as well as the operators you use to work with them. Dictionaries, lists, tuples, and other data structures specific to Python receive plenty of attention including complete examples. Authors Mark Lutz and David Ascher build on that fundamental information in their discussions of functions and modules, which evolve into coverage of namespaces, classes, and the object-oriented aspects of Python programming. There's also information on creating graphical user interfaces (GUIs) for Python applications with Tkinter. In addition to its careful expository prose, Learning Python includes exercises that both test your Python skills and help reveal more elusive truths about the language.
|
Customer Reviews
|
Good even for experienced...      By A1VAOK7RRFZRL3 on 2004-01-26
I was a programmer for 15+ years and used Perl for 8 or so of those years, so although I'm a newcomer to Python I'm definitely not a newcomer to programming or to scripting languages. When I ordered this book, I was worried that it might be too basic, but the more advanced O'Reilly Python books have not been updated to Python 2.2/2.3, so I ordered Learning Python anyhow.And now that I've read it, I can highly recommend it even for experienced programmers. You will have to skim over basics in various chapters, but it's well-written and covers many topics, including 5-10 pages on 2.2's new-style classes, including static and class methods, instance slots, class properties, and __getattribute__. It refers you to Python's documentation for the details of complex topics, but still gives you an idea of the concepts in play. For example, after a couple of paragraphs on instance slots, it says, "... Slots are something of a break with Python's dynamic nature, which dictates that any name may be created by assignment. They also have additional constraints and implications that are far too complex for us to discuss here (e.g. some instances with slots may not have an attribute dictionary __dict__); see Python 2.2 release documents for details." Which I think is a good compromise. They don't fill the book with details, but they don't simply wave their hands and give you no clue as to issues outside the scope of the book. It is well-written and well-organized. It covers the core language well and gives a good taste for standard packages and many other tools including things like Pyrex and ctype. (And you won't be disappointed with Python itself. A great language!)
Excellent introduction to Python      By A1B08Y61F3TK77 on 2000-02-24
Together with "Perl: the programmer's companion", by Nigel Chapman, this is one of the best introductory book I ever read. If you already know "Programming Python", the previous book of Mark Lutz on Python, and are concerned about the possibility that this book was just another messy collection of concepts and tips, relax: this is a completely different object. "learning Python" is a well-designed, well-written and concise book. It gives you all you need to write system administration utilities, Internet-related programs and other small applications. (Should you need a book on TKinter, the standard GUI module of Python, buy "Python and TKinter programming", by John Grayson, Manning publisher).Consider to buy this book because: - It is clear and well written. No struggles to understand the basic concepts and having the first programs running. - It is well-designed and well-structured. You can find the info you need in a snap. - You get a real understanding of Python, not only a description of its nice features. - It is concise. In a day or two you will be coding in Python. - It is a very good guide to keep on your desk. It is the missing part of the online documentation. - In describes how to perform the most common task with Python. You will not have to reinvent any wheel. - It describes a few important modules of Python: JPython, TKinter and COM. You can get a feeling of what you can do with Python (but, to go further, you will have to read the online documentation and perform a few experiments by yourself). Python is a very smart language and deserved a better book than "Programming Python". This is that book.
Fair introduction to Python for an experienced programmer      By A21E3ZH2B12LEM on 1999-10-05
First off I would like to make a distinction between the Python programming language and this particular introduction to it. Python is a great language and you will enjoy programming in it. This is probably the source of excitement in reviews on this page. Because the book, unfortunately, has a number of flaws.The tradition of O'Reilly Perl books has been not only to teach you the syntax of Perl, but also to introduce programming techniques and ideas how to make best use of the language features. This Python book scores zero on these points. It focuses on syntax exclusively and this makes it unsuitable for an absolute beginner. The examples are unimaginative. The authors show you how to write correct code for using "dictionaries", but not how to USE "dictionaries". A Perl book author would throw in a program that uses a "hash" to search for duplicate data entries (as they did). Besides, the flow of the book is uneven. Functions and classes are discussed at length, but built-in data types and exceptions are looked at only briefly. All this is really unfortunate because there are not very many Python books on the market and it is a very good language. Overall, I think, this book is best for experienced programmers who already know their CS, have to get up to speed with Python very quickly, have $30 to waste, and really love to own O'Reilly books. The rest might be better off by printing out the Python tutorial.
extremely disappointed      By A2EI9JLGS744Y1 on 2003-01-17
I bought this book because I originally bought the author's Programming Python book mistakenly thinking it would be similar to the Programming Perl book (which is a stellar book, where as the Python equivalent is more like a cookbook). It was immediately obvious that I was NOT going to learn Python from that book so I bought this one. Again, a mistake. It may be a fair overview of Python but it did not give me the tools I needed to be productive right away; and if it did have the information that I was looking for it was not obvious. Simple things like writing to standard error, file tests, executing separate programs and saving the output, parsing text, even how to force a script to bloody exit... basically common things people expect from a scripting language right away were given either little, weak, or *NO* obvious treatment. The appendix is no help either, I could not find most of these simple operations listed there under the usual key words. I'm sorry to say but this is the worst O'Reilly book I've come accross and (together with Programming Python) is a black mark on the series.
Succinct Yet Thorough Intro To Python For Programmers      By A1QV1M65NFN9GY on 2001-06-19
Mark Lutz and David Ascher deliver precisely the needed information to meet the objective stated on the cover of the O'Reilly text, "Learning Python" (Help for Programmers).A succinct, yet thorough treatment of the Python programming language is presented in some 350-plus written pages that are well organized and facilitate the development of Python programs in a "Read and Code as You Go" fashion. After spot reading the Chapters on "Getting Started", "Types And Operators", "Basic Statements", "Functions", "Modules" and "Common Tasks In Python", I was coding and running my first text file I/O Python programs within the first half of a day. The authors concise presentation of the concepts definitely facilitated the "learning curve", which so often is an obstacle when learning a new programming language. The material was also indexed very well with clear index descriptions to easily determine what the topic was and where to find it. What I found to be the strongest point of the book were the "Gotchas" sections, in which the authors discussed topics such as Python Language Constructs, Program Class Usage and Coding Practices to be aware of. I found the "Common Coding Gotchas" section at the end of Chapter 3 of great benefit in coding and debugging my first self-authored Python programs (As I learned, Python is definitely a language where you want to indent consistently, avoid the mixing of blank spaces with tabs and not forget the use of colons to denote decision logic). The application of these concepts alone were a great asset in reducing the "Learning Curve" for me. The program examples provided reinforced the clear, concise concepts presented by the authors. The programs that I studied were suited to running in both a Linux environment (using Linux Python Version 1.5.2 for SuSE(tm) Linux 7.0 and Red Hat(tm) Linux 6.1) and MS Windows(tm) NT/98 (using Active State's Active Python(tm) Version 2.1). Exercises presented at the end of the chapter were effective at reinforcing the programming concepts presented. With some supplemental tutorial material for non-programmers, this book could be used as an educational text for a Python programming class, particularly one geared for programmers with scripting language experience. The authors did a good job of covering a number of topics important to application programmers. Object-oriented Constructs, Manipulation of String Objects, Operating System Module Use, GUI Programming Component Frameworks and Applications such as Tkinter and JPython are discussed to provide the reader a good exposure to the extent of the Python language implementation and its strenght as a robust, object-oriented scripting language. The book is definitely an invaluable resource for providing the essential material necessary to construct your first Python programs, especially if you've had prior programming experience with other scripting languages, such as REXX, Javascript or Perl. Definitely one of the best O'Reilly publications I've read to date. Kudos to Mr. Lutz and Mr. Ascher for their contribution to making the experience of "Learning Python" a fun and productive pursuit. Five Stars!
- You'll love Python
     By A61PGZQ09V8UN on 2003-03-02
I debated whether I should write seven pages, footnoted, indexed, and full of examples on why you should not buy this book and choose to seek another source for learning Python. But if you're the type who would actually make it through all that to get to the main point, you might actually LIKE "Learning Python". I'd rather save you, the save-able, from experiencing the same pain that I am going through right now. So here is my one-word review: "Excruciating". I hope this has been helpful. By the way, Python is fantastic and is ironically everything that this book is not.
- Not really useful
     By A30GFZT6N2QX1N on 2006-01-03
This book is not very good for actually learning Python. It also lacks a reference section and is excessively wordy.
Learning implies tutorials and a gentle progression from basic to advanced subjects; this book does neither. For example, in chapter 3, "How You Run Programs", it introduces modules and namespaces--fairly advanced concepts to read about before even the first "hello world" program! In chapter 4, as it describes the use of numbers and strings, it is already delving deep into the uses and implications of Python's objects.
With well over 500 pages, there should be plenty of room for a reference section, but there is none. There is no list of built-in classes and their methods.
The overall tone of the book is enthusiastic, touting Python's object-orientedness and other advantages. Unfortunately, it is excessively wordy and difficult to read. Cheerleading can be excused, but it is present on nearly every page and gets old quick.
In a book about programming or a programming language, one might want tutorials, reference, discussion of advanced topics, or code examples. This book provides none of these things. I do not recommend it.
- very good book for us noobs
     By AL1XV4L25FZ2S on 2007-08-26
I'm an experienced C/C++ developer and needed to pick up python in a hurry for work. I ended up buying several python books to make sure I had all my bases covered. I've come to appreciate this book a lot.
It does two things very well. First, it gives you a good overview of the language. You can read the book front to back and it has a nice progression. You'll certainly know the basics if you do that.
Second, and probably more importantly, for those of us too impatient to read a book cover-to-cover, it serves as an excellent reference for beginners. When I started out there were all the little noob things that I found myself constantly having to look up. Like "how do you specify a comment?" or "how do you structure and if-block?" or "how to you get a substring out of a string". Very basic questions like this that many python books don't bother with because apparently they are too basic.
If there is a weakness, it's just that this book is rather small and only covers the very basics. So reading this book alone will certainly not make you a mighty python programmer, or even give you enough info to probably write something interesting. But this book definitely deserves a place on your bookshelf if you are starting out and need the basics.
- Excellent introduction to Python
     By A3T8AI2TYQ27WK on 1999-11-23
I believe this is an excellent book for learning Python. The author's style is flowing and smooth, the examples well-thought-out, and he makes it really easy to pick up Python. Compared to Programming Perl (the camel book) which is dense and heavily syntax-oriented making you feel like you're wading through syrup, this book was a pleasure to read.Unreserved recommendation.
- Best introductory book I have read to any computer language.
     By on 1999-06-07
I was recently introduced to Python by the second author, David Ascher (who works at the same Institute as I do). I am really impressed by the power of Python and by the exceptional quality of the reference guides and this book in particular. As a former Professor of Computer Science at Harvard, I wish that all computer science books were written with this amount of clarity and humour. Everybody in my research lab is now learning Python from this book and my chief programmer is even more enthusiastic about it than I am. It has enabled him to write some image processing software in a few weeks that would have required months in other languages (and he knew nothing about Python two months ago). For myself, it has encouraged me to start programming again after a gap of many years. In summary, the Python language is extremely useful for image processing (and many other applications) and this book makes it very easy and enjoyable to learn.
- Lutz & Ascher Do Python Justice
     By on 1999-05-04
I can't get over how damn good these guys are. I've been toying with Python for almost a year, and been a heavy user since this past fall. It's been a godsend for both heinous class projects (go NumPy!) and side tinkerings of my own. The standard documentation is pretty good, and Lutz's Programming Python book (own that too) is also superb. I bought this new book sight unseen because I knew what to expect...and this book did not disappoint! I feel like buying this book for friends just to introduce them to the language. It's current, it's well written, and it is a wonderfully crafted introduction to Python. It's useful even to people who know the language already...it works well for me as a reference for those various things I forget here and there (to supplement Lutz's Python Pocket Reference -- another must have). Both of these authors have much to be proud of...thanks for this great addition to the Python world!
- Good Beginner Language
     By on 1999-11-08
I had no programming experience, and though I was worried at first to the many references to the C language it turned out to be an easy to follow book.
- Disorganized, bloated book
     By AO6XQNAZYQJQ2 on 2004-12-17
I did not like this book. It is terribly organized. It is incomplete. Although it doesn't present wrong information, the way it is presented makes it seem inaccurate. Information on one same subject is scattered in many different chapters and never presented in one place. For that reason it is practically impossible to use as a reference or to quickly find a piece of info.
For example, while I was mid-way through the book, I wanted to quickly check what kind of comments Python supported. Does it support only one kind (line comments), or like C++ and Java has two kinds (line and block) ? So, I checked the contents - I was searching for a chapter called something like "lexical structure", or even "comments". No luck. (However, I did find a chapter called "Clicking Windows File Icons" ... - very useful! )
I didn't give up. Next step, check the index. "Comments" are mentioned three times in the book. The first time in the chapter "Basic Operations and Variables" (good choice!!!) - one kind of comment is described briefly in a paragraph with no relation to the rest of the chapter. Sadly, no answer to my question there.
The second time is in a chapter titled "Python Syntax Rules". Hmm, that makes more sense. Well, technically not, since comments are not part of the syntax, but let's not get technical ... Here it says that comments are ignored. Good to know. But how many kinds of comments are there ???
The third mention of comments is in the chapter "Documenting Pyhton Code". "Finally!", I say to myself and naively rush through the pages. Alas, no luck again. It says that "#" comments are a way to document code, but again it doesn't say if they are the only kind of comment, or if there are others.
By this time it is probably implied that there is no other kind of comments, since it is never never mentioned, however one SHOULD NOT have to guess about such things when reading a technical book.
I went ahead and checked the online Python documentation at http://www.python.org/doc/2.4/ref/ref.html . It took me 5 seconds to find "Lexical analysis", "Comments" and read what I needed. Why did I bother with the book ??
In defense of the book, I must say that it is not all bad. It does sucesssfully teach you to program in Python, even though it is strongly geared to inexperienced programmers (and thus annoying at places). However you absolutely need one more source of reference for Python, and if you have that, why buy this book ?
It is nothing like "The Java Programming Language", which in my mind is an example of an excellent language book and reference.
- Thorough introduction but slow and not good for reference
     By A3QABW2NSP9Z5C on 2005-01-02
I would never try to use this book as a reference. It was not designed and it's not good for that.
It was designed as your first book on Python, especially if this is your first programming language. As such, it gives you a really thorough and extensive introduction written by a renowed authority. The parts on functional programming, Python's OOP and modules lay the solid foundation for the future Python programmer. Beware though: compared to similar "foundation" books in other languages' realms, this one is slow-paced, limited in scope, wordy and even redundant at times.
If you already know a language like C++, Java or Perl, and especially if you've already written some Python code, then this book is not your best choice: it will seem terribly slow paced, tedious, bloated and of no value as a reference (which is what an experienced programmer like you really needs most of the time). In this case, you could use a short and freely available tutorial like Guido's, then a good reference book like Python in a Nutshell and maybe some more advanced books like Python Cookbook and Python 2.1 Bible (provided there will be a new edition).
As an intermediate or experienced programmer, you may still benefit from Lutz's "textbook". You may want to skim quickly through the first 3 Parts (which make 180 pages of beginner's stuff you've learned in highschool, decorated with the occasional gem toward the end of some chapters), then slow down a bit for the rest of the book and pay special attention to chapters 14, 17, 18, 21, 22, 23, and 27. This book has too many chapters for my taste, btw.
Part VIII, written by another authority (David Ascher), is a little too short and still bad for reference. In the next edition, I hope it will be expanded to a reasonable level of detail. I found the coverage of regular expressions particularly disappointing -- probably because they are covered by Mr Lutz's other book, Programming Python, which was supposed to be your second book. The exercises at the end of each Part are not the most interesting and useful I know of.
- The best introductory book ever written
     By A3HL6S5PKV3M2V on 2000-10-09
For all programming newbies that want to start with a real programming language, Python must their choice and "Learning Python" their first book on programming.It provides a complete, concise introduction to Object-Oriented Programming (OOP) with Python and cleary explains how you can do almost everything with simple scripts! It does not include any kind of reference at all - however this is not a drawback because it's not directly in the book's purpose - after all the standard Python distribution includes all the references you need. So far, the languages mostly tought in schools are LOGO and stone-age distributions of BASIC (such as GWBASIC or QBASIC...). Even if you overlook the fact that they are way outdated, the most oblivious student can understand that even when these languages were created, they were all useless. It's high time for this situation to change - as Python can be the first language a young person can learn and probably the only one it will ever need!
- Major disappointment
     By A11Z10BK4PKRME on 2004-03-30
Having programmed before (in dBase, COBOL, etc.) I expected to be able to follow a book that's intended for less-experienced programmers. Boy, was I mistaken.This would probably be a fine book for someone who is migrating from C++, but I found many of their explanations needlessly cryptic. They use, in all of the examples, phrases from Monty Python - understandable, but totally useless for someone who wishes to relate functions to real-life application. In short - if you've already mastered C, this book may help. If you have minimal or no programming experience, this book will show you how to perform functions, but will not explain what you'd want to use these functions for in application programming.
- This book is awful. Use the online tutorial instead.
     By A35AXG184YCOAX on 2007-07-27
I am an experienced Perl and C programmer who wanted to try something new, and everyone raves about Python. The language itself is great -- but this book is awful. Here's the really short form of why I think so:
- The point of Python (or any programming language) is to do things, not to marvel at how cool the language is. Reading the book, you can't do anything other than toy programs until you're almost all the way through. That's 400+ pages of reading before you can do anything more interesting than basic operations.
- The book isn't concise -- quite the opposite. The authors marvel at the implementation details of the language at the very start -- which takes up many pages and isn't really relevant for the beginning python programmer.
I finally just went to the online python tutorial[...]it covered most of the same topics with a lot fewer words, and was less confusing to boot.
- The reason I buy books rather than just use online resources is to use the exercises as a method of forcing myself to learn the language in a structured fashion. The exercises in the book are trivially easy: they're not about thinking and understanding, but regurgitating what the book said. Because you're not doing any real work until the 400-page mark, you can't do anything really interesting in the exercises or on your own (if you're just reading the book).
I've read a lot of "Learning XXX" books. This is by far the worst.
My recommendation is to skip this book and go straight to the online tutorial. You'll save trees, money, and time.
- Not bad, but...
     By A1POJUUDH0BP3S on 2000-08-12
Can't really describe precisely what's wrong with this book. I've been programming, and picking up languages, for 25 years. This book didn't do anything for me... so I just started writing some code. At some point the light went on and Python was magically easy. Now, as I need to help some other people learn Python I'm looking back through the book and NOW it looks great - covers the key details, describes them well, warns you about pitfalls, etc. In short, everything I'd like to present as a trainer (and I know it grew out of the authors' experiences as trainers). But it didn't work at all for me as a newbie.
- Who is the target audience for this book?
     By on 2003-03-19
I first purchased this book nearly two years ago, but I never got past the first few chapters.I just picked this book up again, with the benefit of two years' experience programming in PHP and a little but of Java, and I realize why working through this book seemed like such slow going the first time around. On the one hand, "Learning Python" is written with a lot of hand-holding for readers who may not have much programming experience at all with any other languages; the basic concepts of variables, statements, functions, data types and the like are all clearly explained, which is a good thing for someone just starting out. On the other hand, there are also quite a few tips and bits of information about memory efficiency, or how certain elements of Python relate to their C underpinnings; things that a rank newbie probably won't understand, and probably doesn't need to know when they're just trying to learn the basics. These esoteric points are probably quite helpful/interesting for programmers coming from low level languages like C, but those programmers will be frustrated by the slow page of the sections covering basic mechanics. So you've got a book that moves at a beginners' pace that's full of asides targeted towards experienced programmers; beginners will be confused and overwhelmed, and experienced coders will just get frustrated. For what it's worth, I have the first edition of this book; I'm not sure how the second edition compares.
- Better than Perl or Tcl or shell scripts
     By AG35NEEFCMQVR on 2004-01-12
It gives a thorough description of how to use Python; which is indeed easy to learn if you already know another language. But when the authors say that not having to compile Python programs means that development time is speeded up, perhaps they are overstating. For most programmers who use compiled languages like C or C++, the biggest time is taken up in finding a method that solves a problem, coding it and subsequent debugging. These days, compilers on recent hardware are fast enough that link/compile times are simply not a bottleneck to development productivity. So it is a bit of a straw dummy that the authors put forth.However, they are absolutely spot on when comparing this to Perl or Tcl. Perl is powerful, but its code looks like assembler. Perl gurus tend to shrug when you point this out, usually saying they understand it, with the not-so-implicit suggestion that if you can't, it is your fault. But this leads to a real maintenance problem and a barrier to entry to others. The cleaner Python syntax can show coding intent far clearer. Plus, and more importantly, the object oriented nature of Python lets you scale up to much larger programs. This has always been a problem with scripting languages, all the way back to the various unix shell scripts and DOS bat files. Often, the most those ever gave you in terms of modular capabilities was the equivalent of subroutines. Which is strictly procedural and not OO. By the way, there is a small contradiction between the above claim that Python is more understandable than Perl and the claim that it has an advantage over C++ or Java because it is not as verbose as those. Typically, in increasing amount of source code, you have Perl -> Python -> (C++,Java). If you think that Python is more understandable than Perl, then by that same logic, we could conclude that C++ or Java is more understandable than Python. So if you are using Perl or Tcl and want something better, Python is a good choice. A good upgrade path. But if you are currently using C or C++, with maybe X for graphics, or Java, then I suggest you stay with those. All three languages, with their graphics, give you a far richer toolset. Python would be a retrograde choice.
- Not for experienced programmers/scripters
     By AWJ2S734FL57Z on 2004-12-03
If you're familiar and comfortable with other languages, you may find this book too long-winded. I think it could have slimmed down by 300 pages and been easier to follow and more useful for learning.
If you get annoyed by incessant references to Monty Python, you may find the various examples very distracting and irritating. ('Foo' is a nonsense word, and doesn't interfere with anything, but to constantly read 'spam' and 'eggs' gets really distracting.)
If you've never done scripting or programming, then the pace might be appropriate for you.
- Be Prepared If You Don't Know C/C++
     By A2MFDR2DC3JVJ7 on 2007-03-31
I'm only about 100 pages into the book and I'm finding the constant references to C/C++ are getting very annoying. Just about every section refers to C, assuming you are intimately familiar with the language. "Just like in C", "same role as in C", "similar to X function in C", "unlike in C", "if you've used C", and on, and on. I suppose this would be a positive for someone coming to Python straight from C, but for the rest of us it can become irksome quickly.
- A good overview that can be used to learn Python
     By A1S3C5OFU508P3 on 2000-10-26
As someone who works with and trains people in many different programming languages and techniques, it is necessary for me to always keep an eye on new things. I had heard a great deal about the Python language and most comments were positive. Therefore, I read this book for the purpose of simply learning what the language had to offer rather than to actually learn how to program in it. I found the material to be well presented and informative, but certainly not for anyone with a limited programming background. There are many references to what is done in C, which helped me, as I have an extensive background in the language. However, if you do not know C, then they are somewhat helpful filler at best, confusing chaff at the worst. The examples are in almost all cases very short, which makes them toys of limited use, but that is how learning a programming language is best done. It is possible to use this book to learn how to program in Python if you already know how to program in an object-oriented language. There are exercises at the end of each chapter and solutions to all are in an appendix. The exercises are at the level that they should be for beginners and the topics are standard learning material. Since my goal was to simply learn something about the Python language, I extracted the desired information when I read it. If my goal would have been to learn how to program in Python, I could have also done that if I had read slower and did the exercises. It is a language with many interesting features and since it is also a scripting language, Python could be used for many things. No doubt I will have to learn it in the future and this book is where I will start.
- Probably the best Python textbook
     By AG45XGJ3ULJBV on 2004-01-28
After a brief encounter with the on-line documentation from Python community, I decided to learn this powerful language with the help of Python library from O'Reilly. I started with a "Python in a Nutshell" which is a good reference guide for experienced (Python) programmers, however it's too heavy for the Python newbie like me. Since, I'm not a professional, full-time programmer, I knew that I needed something more comprehensible, so I waited for the second edition of the "Learning Python" to be published. At the end, the wait paid off. This book is excellent study guide for any kind of programmers, from absolute beginners to veterans in other languages. The book clearly shows that the both authors are experienced teachers. Topics are presented in a clear fashion with plenty of code samples and useful exercises at the end of each part. This book should be read as a textbook in front of the terminal, trying out all examples as they're explained. Now, I'm comfortably looking forward to read some more specific and advanced Python books. Highly recommended!
- Its benefit depends on what you are looking for
     By ABE0NIMV50HOG on 2006-12-18
I have been a Zope/Plone developer for over a year and that is also the total amount of time I have spent with Python. With a CompSci major and experience in languages like C, C++, and Java, Python was easy to pick up and is the most programmer-friendly programming language I have used. I learned Python mostly by reading the online, free book Dive Into Python and reading the open source code for Zope/Plone.
After a year of this, I knew Python pretty well (well, it took much less than a year) including best practices, but I felt that I may be missing the full potential of Python, because I only learned it in the context of Zope/Plone APIs and my needs for developing in that framework.
I picked up this book hoping to recover the basics, understand the behind-the-scenes technical aspects of what Python is actually doing, and to make sure I hadn't missed anything along the way.
For this purpose, I think this book works very well. The writers explain what is really happening behind the scenes (mostly in C), a handful of gotchas, and really helped me understood what Python was really doing and why. If this is what you are looking for, this is a great book to have.
However, if I did not already know Python, I think this book would have set me off track a bit. The writers spend a lot of time on what are really trivial concerns for beginners, and they hardly ever discuss best practices. In their effort to cover all the bases, such as while loops, they sometimes show something that is not a best practice in Python (you hardly ever use while loops in python). Important topics like classes and OOP aren't covered until late in the book. If you are new to Python, I highly recommend checking out Dive Into Python instead. They will get you developing as a Python programmer, instead of a C programmer that happens to be using Python (ie, using list comprehension instead of while loops, etc.).
- Good for reading and reference
     By A3UJ5WOBA01ZJE on 2008-02-16
I am pleased with this book. I read about half of the way through it and then decided to keep it close by as a reference guide. As a reading guide to 'Learning Python' it can get a little monotonous. This really isn't the author's fault, who shows a slight, persistent but non-distracting humor. I think some monotony is inherent in learning any programming language - 1) here is "Concept A," 2) here is how/why "Concept A" is implemented in general, 3) here are some particulars to keep in mind when implementing "Concept A", 4) here are the myriad of variable methods of implementation. This book covers mostly the 1 through 3 ideas above and leaves most of idea 4 for more advanced books or reference material. The author does a good job of managing content. There are places that give an overview and state that more detail is ahead, but the instance where a concept or implementation is initially mentioned and the degree to which it is described is adequate for the current context. The 'more detail' that eventually comes along then fits nicely into its own 'more detailed' context. In other words, I didn't feel like I had to jump forward 5 chapters to understand one aspect of the current chapter. What the book lacks, or blissfully does not include, is any lengthy code constructions (this can be good, bad, or mean nothing, depending on your learning style and requirements). "Python Programming, An Intro to Computer Science" is a bit more engaging but, ultimately, is not as verbose or specific where needed. I read through allot of books and actually see these two as worthy complements. I also use Python Programming, Python Essential Reference, Python in a Nutshell and Python Cookbook as supplemental references. Sometimes I am looking for an overview of a concept, just an example of code syntax, all the options available for implementing a construct, or how someone else approached a common problem, etc. Each book has its time and place. I tend to use Learning Python for the overview with some examples and consider it a useful companion to the online and other reference materials.
- Good starting point for pythoneers
     By A18V01YK0DCRFT on 2000-01-09
This is a nice beginners textbook for Python which deals with many deatails, so that it is also valuable for people who already know Python. Still it is not reaching up to the highest branches of Python art. That would be the task of a massively revised second edition of the other Lutz book: "Programming Python". And it has to be said: Python is a great language!
- Good, improvable.
     By on 2002-02-10
You can learn Python from this book. However, this is not one of those books which capture your attention, like, say, Kernighan's books, or even "Learning Perl". You have to fight against this book. This is mainly for the following reasons, IMHO: 1. Jargon is used too frequently. If you are not a hacker (in the good, original sense) you have to work against the language (not Python, English!), too. I had to reach for the "Hacker's Dictionary", now and then. For instance, the word "hook" is used in a technical sense without being explained. 2. Object is never defined. In the "official" tutorial, which is much shorter, a clear and concise definition is given. This is badly needed, for "object", in the python world, is different that in C++, or smalltalk, world, where it is a class instance. In python it is the triple (type, address, value). 3. Phrases like "Classes are mostly just namespace" don't help the beginner who wants to know what distinguishes a concept from another. These abstractions are premature. 4. The too frequent use of Monthy Python terms like "spam" and "eggs" is ridiculous, and makes the examples seem totally useless pieces of programming.So, I think this book is perfect for one who is a personal programmer and wants to learn quickly what Python is all about. He will probably like the book for the very reasons I complain against it. The subtitle is correct: Help for Programmers. Still, you'll learn the language. But with a fight!
- Not worth the expense.
     By A135730LG1JRVC on 2005-12-13
Programming books have two uses: to teach you and as a reference. This book does an adequate job of teaching, but I'd say that "How to Think Like a Computer Scientist" does better, and you can just look at it on the website. The index is lousy, which makes it hard to find things, and it doesn't cover enough material to make it useful. I wish I'd just bought two copies of Python in a Nutshell instead.
- Learning Python?
     By on 1999-06-20
I purchased the Mark Lutz's first book, Programming Python, and found it impossible to comprehend. So then I heard about a new book called learning Python, which was more of a tutorial-style book. I bought it immediately, eager to learn the language which I have heard so much about, and to my dissapointment, it seemed to be the same as Programming Python, only shorter. If you really want to learn a programming language, get Learning Perl by Randal Schwartz and Tom Christiansen. Good luck!
|
|
You may also be interested in...
|
|
|
|
|
|