Author: Brian Overland and John Bennett
I have only one problem with this book - it isn't really advanced. This is a matter of opinion so don't let me put you off at this early stage. The preface states:
That's what this book is for: to be the second book you ever buy on Python and possibly the last.
The book then goes on to suggest that if you are a bit rusty you start with Chapter 1 which is a very basic intro to Python. Alternatively, start at Chapter 4 if you are a strong Python programmer but don't know everything. Read chapters 5, 6 and 7 if you want to deal with the special features and chapters 12 and 13 for advanced math and plotting software. My recommendation if you are a bit hazy on your basic Python is to read another book first - this is, after all, supposed to be your second book on Python.
Chapter 1 really is a very simple introduction to Python and you won't need it if this really is your second book on Python. Chapter 2 then goes over "advanced" string handling and, again, if you have read a book on Python before you probably will not get much from this - you really should know slicing and indexing already. This is fairly basic string handling. It completely misses discussing the interesting problems of Unicode and different ANSI code pages. Chapter 3 is another "advanced" chapter but on lists. In this case it does vary from the very basic to slightly advanced uses of the List and the Dictionary leading up to multidimensional Lists.
Chapter 4 is just a collection of 22 shortcuts and consists of some very basic things - the += operator - to slightly more advanced things - the args and kwargs list and what's an iterator. Chapter 4 might have made a reasonably attractive book in its own right - in this book it looks slightly out of place as a collection of things that didn't fit elsewhere.
Chapter 5 goes over text formatting - fiddly rather than advanced. Chapters 6 and 7 deal with regular expressions and the second of them does go into slightly more advanced areas such as named groups, capture and so on. Chapter 8 is about reading and writing files - binary and text.
Chapter 9 is really the only chapter that I think is on advanced Python as it deals with Classes, but it doesn't go very deep and there is little explanation of the ideas and it doesn't stray from the very basic notion of class and objects. For example, there is one paragraph on multiple inheritance and that's it - no mro and no metaclass. The chapter then goes into an enumeration of the magic methods.
From here the chapters go into various non-core Python topics:
Chapter 10: Decimal, Money and Other Classes
Are there no more advanced Python ideas to explore?
You might like this book. It is fairly well written and nicely produced, but it is a collection of random Python topics that are mostly beginner to intermediate in level. In particular, the coverage of object-oriented Python is very limited with no real attempt to explain Python's rather unique approach to classes and objects. There are also lots of topics that aren't really directly about Python - more like Python applied to a particular subject area. This might be useful, but if you are looking for a book on advanced Python it might leave you feeling slightly cheated.
To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.
|Last Updated ( Tuesday, 10 March 2020 )|