Programming in Python 3 (2e)

Author: Mark Summerfield
Publisher: Addison Wesley; 2nd edition, 2009
Pages: 648
ISBN: 978-0321680563
Aimed at: Exisiting programmers
Rating: 4.5
Pros: Good introduction to object-oriented principles and to practical Python
Cons: Not for the beginner to programming
Reviewed by: Mike James

This book is seriously dull but this isn't necessarily a bad thing.


The first chapter starts the book of with what might seem like a good idea - a rapid introduction to Python. This takes the form of eight short presentations of something that makes Python a language worth learning. For the beginner however this is likely to be the least effective chapter in the book - a lot of it will simply pass by without sinking in. For example, Piece #2 is about object references and, while reasonably well explained, isn't really going to go down well with a complete beginner.  If you are familiar with another programming language, however, it is well worth reading as it does point out why you might want to read the book and learn Python.

 

Banner

 

The early chapters constitute a lightning introduction to procedural Python, i.e. Python without classes or objects.

Chapter 2 introduces data types and is a straightforward explanation of variables and data without any attempt to introduce anything but serious study. It is also fairly complete with no attempt to separate out the easy basic stuff from the more advanced material. Chapter 3 continues on Collections and again the treatment is comprehensive.

After spending so much time on data, Chapter 4 introduces the Python control structures and functions. This is a direct explanation of how Python does things that you are supposed to mostly already know about from other languages. By Chapter 5 the reader is more or less fluent, or expected to be fluent, in procedural Python and we move on to consider modules and packages.

Chapter 6 starts the learning process over again with an introduction to objects. Compared to the introduction to procedural Python this is relatively slow and gentle. It is a suitable introduction to object-oriented ideas even if you haven never encountered them before and by the end of the chapter you will have "done" objects and encountered just about everything you need to know including inheritance an polymorphism.

From Chapter 7 on the book is mostly about practical aspects of using Python. You can think of it as a primer on applied Python. Chapter 7 is about file handling, 8 is a general catchall on "advanced programming", 9 is on debugging and testing, 10 is on threading, 11 Networking, 12 database, 13 regular expressions, 14 on parsing and 15 on working with GUIs (Tcl/Tk).

If you are thinking about learning Python you need to take note that this is about version 3 and this is not backward compatible with earlier versions of the language. You also need to take seriously the comments about this not being a book for the beginner. It is a well written straightforward account of Python and how it is used. It will suit a reader who already knows something about how to program in another language and is prepared to work at chapters that tell you everything there is to know about a topic before moving on to the next topic. This approach makes it difficult to work out what is essential knowledge and what you can leave until you actually need it.

Overall recommended for any reader with a reasonably good background in programming wanting to learn Python fairly quickly and in good depth.

Banner


ASP.NET Core in Action, 2nd Ed (Manning)

Author: Andrew Lock
Publisher: Manning
Date:April 2021
Pages: 832
ISBN: 978-1617298301
Print: 1617298301
Audience: Developers interested in ASP.NET
Rating: 4
Reviewer: Ian Elliot
One big book to cover the one big alternative web tech.



Pearls of Algorithm Engineering

Author: Paolo Ferragina
Publisher: ‎Cambridge University Press
Pages: 326
ISBN: ‎978-1009123280
Print:1009123289
Kindle: B0BZJBGTLN
Audience: Admirers of Knuth
Rating: 5
Reviewer: Mike James

Algorithm engineering - sounds interesting.


More Reviews

 

Last Updated ( Wednesday, 07 July 2010 )