My first programming languages were C and Perl. I found C very fast and powerful, but I had constant battles with ever finishing the projects I started in it. I mainly used Perl for one-liners and throw-away scripts. I found that the C programs I wrote contained many lines of code for even the most trivial programs and the Perl programs contained very few lines of code but, due to Perl's cryptic nature, were so hard to read that it didn't really matter.
When I found what Python had to offer, I was amazed. I could write big applications very quickly, and the source code was always easy to read because of how Python is built. Best of all, Python is so easy to learn that you can literally learn it in a weekend just from reading the online tutorial. No expensive books are needed, though there are Python books out there.
There is a lot more to Python than what I can cover in this article, but I am going to show you a few Open Source projects that people have developed using Python, to give you a good idea of just what can be done with it.
If you want to write programs with a Graphical User Interface, there are a few options. Tkinter has been the standard for a while, but you'll probably enjoy either the PyGTK or wxPython toolkit more. Ivo van der Wijk is developing an IRC client in python-gtk called MoST. I have also written a somewhat-functional IRC client called Reptidle in my spare time using wxPython. PyQT is another toolkit to check out.
If you're interested in writing games, Pete Shinners's Pygame library is for you. Pygame, which wraps the SDL library, allows you to create fully-featured games in Python very easily. Pete has also written a couple of games using his library, including the addictive "SolarWolf", which is a remake of the old Atari 2600 game "SolarFox", and "Aliens", which is a demo game that comes bundled with Pygame and is great for learning to write descent games. Jan Ekholm and Gareth Noyce have been working on a Pygame-based realtime network strategy game called Civil for a couple of years now. Pygame also has interoperability with PyOpenGL, a cross-platform Python binding to OpenGL. The creator of Pygame, myself, and some other Pygame fanatics can be found on irc.openprojects.net in #pygame. Come on by anytime.
Games aren't the only thing Pygame is good for, though. There are also some multimedia applications being developed with it. The following are just a few of them:
For you Web developers, there's a popular Open Source Application Server called "Zope". Zope allows you to create dynamic Web sites in a very object-oriented way. With Zope, everything is editable through the Web. It comes with its own Web server, and you can write Python scripts for it. Zope itself is mostly written in Python. The Zope Book is freely available online, and there is an IRC channel called #zope on irc.openprojects.net.
Twisted by Twisted Matrix Laboratories provides an Open Source framework for developing network applications in Python. Twisted takes a lot of the hassle out of development so you can focus on the good stuff. Currently, it has support for the FTP, HTTP, SMTP, IRC, telnet, POP3, AOL's instant messaging TOC, DNS, LDAP, finger, Echo, discard, chargen, and Perspective Broker protocols. It is constantly being developed by the guys of #python on irc.openprojects.net, so drop in if you have any questions.
Hopefully, after looking at some of the Python projects I've mentioned, you can see that Python is a powerful language that is suitable for real world applications. You can also extend and/or embed C/C++ with Python if you need more speed.