Python is a general purpose programming language. The Python programming language is often considered more versatile when compared with other modern programming as it can be used cross-platform (Linux, Mac OS X and Windows) and for a wide variety of types of programming tasks (including tasks in Web Development, Database Access and Desktop / GUI Software Development http://www.python.org/about/apps/). Python also has an open, community-based development model managed by the non-profit Python Software Foundation and is released under the Python Software Foundation License http://en.wikipedia.org/wiki/Python_(programming_language). For this and other reasons, Python is very popular choice for GUI programming on Linux Operating Systems such as Ubuntu and Fedora and is suitable for both KDE and Gnome-based software development projects. Python is also often regarded as a good programming language for those new to programming, due to it being a high level language with a syntax that is easy to learn. However, this latter point does not mean that Python is not a powerful language, especially due to the fact the it is very extensible. However, many programmers do use Python for prototyping, before using another, more complex language (such as Java, C++ etc) for the actual development work.
All of the below book are available free and legally:
Dive into Python by Mark Pilgrim.
How to Think Like a Computer Scientist by Jeffrey Elkner, Allen B. Downey, and Chris Meyers.
GUI Programming with Python: QT Edition by Boudewijn Rempt.
Text Processing in Python by David Mertz.
The Standard Python Library by Fredrik Lundh
A Gentle Introduction to Programming Using Python by MIT (Mihir Kedia and Aseem Kishore)
http://www.archive.org/details/HampshireLinuxUserGroup_13 Why I Like Python by Hampshire Linux User Group (Jim Dennis)