Top critical review
17 people found this helpful
Would benefit from proof-reading
on 4 September 2009
When I bought this book, I noticed there were eight reviews on Amazon, all of them giving it five stars. I thought at the time this was too good to be true, and so it proved. The book is full of errors.
Some of the errors are merely an irritating distraction. For instance, on pages 14 and 17, there are headings with three superfluous thorn characters, "þþþ". Some are simply baffling, like the distinction between the 2-parameter full syntax of the range() function on page 301 and the 2-parameter abbreviated syntax on page 302. Some are more serious. For example, page 81 has what purports to be a discussion of Example 3.1 on the facing page; unfortunately, much of the discussion concerns the use of the os.linesep attribute, which doesn't appear anywhere in the example.
Those errors could be forgiven; others are unacceptable. As a newcomer to Python, I struggled with the eval() example on page 104. The preamble suggests that it is an example of the use of repr(), when it isn't - it uses backquotes. Granted, we've just been told the two are equivalent, but there's no need to complicate what should be a straightforward illustration. But that's not all; the point of the example is to show that some values passed to eval() will return an "invalid syntax" error. Unfortunately, the "invalid syntax" error demonstrated is not the one intended; it arises from an extra parenthesis in the code.
The most glaring error is that many of the page numbers in the index are wrong. That renders the book almost completely useless as a reference.
A little effort could make the third edition (if there is one) a useful text, but I would not recommend the second edition.