For me, one of the more useful books about the Python programming language is a collection of code "recipes" in a cookbook published by O'Reilly. Each recipe is a chunk of code you can drop into your application then tweak. When I went to the local library to see if they had this book, the librarian looked at me strange when I asked if they had a Python cookbook. Then I realized he didn't know Python was both a snake and a software language. Not too many people cook pythons, let alone write up a book of recipes.
Python also refers to Monty Python, the British comedy team from the 1960s and 1970s, which is the source for the name of the Python language (seriously), as well as the general attitude of the Python community. Instead of using the standard terms foo and bar, for example, Python coders tend to use ham and eggs in their code examples. And Python documentation also uses references to Monty Python and the Holy Grail movie.
Started in December 1989 by Guido von Rossum, a Dutch programmer designated as BDFL or Benevolent Dictator for Life, Python has a lot to recommend it as a language for any skill level. The language, for example, has a very simple syntax used to write code. There are no curly quotes to balance out, no semi-colons to forget at the end of most lines. Python also works as scripting, compiled code, and embedded code. The community also has a fairly rigorous style for the use of comments, as well as encouraging the use of docstrings to make it fairly easy to create documentation from the code.
Python is a high level language designed to use less code to perform tasks than other low level languages like C. The community organizes its activities using PEPs, or Python Enhancement Proposals. PEPs cover technical and cultural topics, from functionality proposals to how to write comments to koan-like statements about the ideal Python experience. For example, PEP 20 is called the Zen of Python and says, among other statements, "Explicit is better than implicit."
Perhaps most useful, for students who know they want to study programming in college, Python has a structured way of working, of thinking about programming problems, that fits well with university courses. Python also can be run from a command prompt which is the preferred method of working for many professional coders. Using the command prompt also is the easiest way to demonstrate and learn basic Python.
What Makes Python Special?
Flexibility and diversity, delivered with a sense of humor, makes Python different from many languages. Like Lua, Python code can run several different ways, as a web application, as a standalone application (using third party tools), or as a helper application integrated into a larger software system. This makes the language an option in a wider range of situations than other languages. Python also works for functional, object-oriented, and imperative coding styles, making the language useful to different types of programmers and applications.
Python also uses libraries to access functionality which makes the core language much simpler and lightweight. Coders only need to add a basic set of libraries plus any extra libraries to add functionality they need.
How is Python Used?
The language is used somewhat equally as a scripting language to build web applications, like PHP, and non-scripting applications. For example, a number of Google applications use Python, in addition to Go, the transaction optimized language Google created. Python also is used to create small applications to be run as needed by larger applications, many of which are written in different languages. While all coders try to choose the best programming tool for the job, Python is flexible enough to be considered in many situations.
What Makes Python So Awesome (Presentation)
A children’s guide to Python programming
Help Kids Code Python Links
One-click install of Python (if needed) and interface to learn Python by making a turtle move around the screen.