|Python 3 Pocket Primer|
Author: James R. Parker
The problem with most pocket guides or "in a nutshell" books is that they generally are much bigger than they should be. It is difficult to take a complex and deep topic like Python 3 and present the bare bones of the subject. The good news is that, while this particular pocket guide still won't actually fit in your pocket, it is only 250 pages.
This particular Python pocket guide covers Python 3 and it isn't a re-write of the previous Python 2.7 pocket guide Python: Pocket Primer from the same publisher. At this point in time you really need to be using Python 3 and trying to forget Python 2 but if you need to the original pocket primer is still available - make sure you order the correct book.
Chapter 1 starts off with how to get and run Python and how to create a program using IDLE. It covers collection of topics needed to write a simple rock-paper-scissors program. Variables, if statements, print function, and some coverage of primitive data types.
Chapter 2 moves on to loop control structures while and for and exiting from loops and how this works with else.
Chapter 3 covers a large amount of material on Python's fundamental data structures - strings, tuples and lists. There are lots of small examples to make sure that you follow.
Chapter 4 is all about functions and covers the basics of using Python functions: parameters, scope, variable parameters and recursion.
For reasons of practical use rather than presentational logic, Chapter 5 covers files. Reading and writing files is important in any programming language, but it isn't core to the way the language works.
Chapter 6 is where the look at Python proper continues with class and objects in general. If anything this is a bit too light a treatment of objects in Python. It is an area that many Python programmers are unsure of and it could really do with a better presentation at greater length. This is particularly striking as the next chapter moves off to look at graphics with Pygame. This is far from core Python and could have been left out of a pocket primer to allow more space for core language features.
We have the same problem with the final two chapters. Chapter 8 is about "handling data" and includes the Dictionary data structure and is basically a collection of ideas about how to work with data. Chapter 9 is called "communication using Python" and it goes over how to send and receive and email and how to use sockets. These are useful topics but why pick it over so many other similar topics - how to serve a web page, how to work with HTML or XML and so on.
This is a well written book with good explanations, but it fails as a pocket primer, not because it is too long, but because it doesn't use the space that it has to present the core Python 3 language. It is very light on object-oriented programming and doesn't cover, even slightly, advanced topics such as coroutines, lambdas, yield and so on. Instead it has a chapter on using Pygame, which is a fun graphics module but not essential Python. The same is true for the chapter on email and sockets. There is so much to say about the language that it is a shame to use the space on topics that might sound exciting in the book's description and leave out so much else.
|Last Updated ( Tuesday, 13 March 2018 )|