REVIEW - Learning Python

Title:

Learning Python

Author:

Mark Lutz, David Ascher

ISBN:

1565924649

Publisher:

O'Reilly (1999)

Pages:

366pp

Reviewer:

Francis Glassborow

Reviewed:

October 1999

Rating:

★★★☆☆

If you do not already know Python I strongly urge you to buy this book and spend a few valuable hours correcting that. I do not think you will be disappointed

Python is an object-oriented programming language. It has a C/C++ like syntax (note, I said like, it is not identical and includes many interesting features such as multiple return values). While it is a powerful scripting language it is also much more than that. It is highly portable and is freeware. Because of this it tends to behave the same way on most platforms, in other words there is a kind of de facto standard.

I would very much like to publish articles on Python but to do that I need people to write them. If you already use Python please try to make time to write about your experiences. I would also welcome an article(s) giving an overview of the language itself.

OK so I am using this book as a peg to hang a number of things on. If you are a serious programmer in the C/C++ community I think that you should have some familiarity with Python. You can use it as a scripting language to knock up a quick program (much as some of us have been known to use Basic). In its other forms you can use it for such things as prototyping applications and other complex programs.

Now to the book itself: While the authors are liberal with their prerequisites I think that I would want a reader to be a competent computer user. They will need to be able to access the Internet (or know someone) because they will need to get a copy of Python for their platform (Windows 95/98, Windows NT, all major versions of Unix - including Linux , and MacOS). I think they should also have some basic understanding of programming. Given those things you are certainly qualified to set about learning Python.

The book is a well-organised tutorial (you need something else for a reference) and solutions are provided for all the exercises. Remember that there are rarely definitive solutions to programming exercises so you cannot check that yours is correct but you will be able to cheat and look up the authors' solution if you get stuck.

The main focus of the book is on traditional Python that is designed to work alongside C/C++ and use code written in those languages. However it gives a brief overview of JPython in the final chapter. As you might guess, this is a version of Python that supports and works with Java.

Chapter 1 is largely aimed at laying the foundations such as installing and configuring a version of Python for your system. Chapters 2&3 introduce you to the basic syntax and tools of the language. The next four chapters cover functions, modules, classes and exceptions. When you have completed these seven chapters you should have a sound basis on which to develop your Python programming skills.

The final three chapters cover the built-in tools, examples of some common uses of Python and an overview of frameworks and applications (including JPython and Numerical Python).

If you do not already know Python I strongly urge you to buy this book and spend a few valuable hours correcting that. I do not think you will be disappointed (If you are, write me an article explaining why).


Book cover image courtesy of Open Library.