Why am I learning Python? That's a good question. A couple reasons, not necessarily listed in order of importance:
Break free of my reliance of mel: I think I know a thing or two about mel. But my scripting language is now wholy limited to the Maya enviroment. This kind of scares me in a sense. Let's pretend that in the forseeable future I need to take a job at some other company that dosen't use Maya. Not a major posibility, but still, it's there. If I know Python, which is OS independent, and can embed itself into such software as XSI, I suddenly make myself much more marketable.
Doing system tasks: I often find myself doing many system tasks, such as moving files, renaming files, resizing images, converting images, making directories, etc. Currently, I have to do all this through mel's system command. While not a big issue for me, if someone ELSE wants to use my scripts, they have to have Maya installed, and not everyone on the planet has Maya I've come to learn. By using Python, I can have a much more elegant implementation of the task, and not have to cary around the burden of a huge 3D app just to execute a simple rename script.
Get better at mel! Surprisingly enough, by learning Python, I'm getting new ideas with mel. Not that I can really convey those ideas here, but since Python can do so more MORE than mel... and do it so much EASIER, it makes me think of new ways to implement mel to emulate those changes.
Because Python is so easy to use! It was a big decision for me to pick up another scripting language, and I did a lot of research into which one; Python, Perl, Visual Basic (which I've heard rumored mel is actually based on). After talking with users, looking at books, and attending a course or two, I decided on Python. It's lauguage is VERY intuitive, it's data types are SO much more flexable than mel.... it's like in the past you had this little swiss army knife to do your work, and now you have a whole craftsman tool set. It's a very elegant language, and if you know mel, you can EASILY pick up Python.
Python CAN be integrated into Maya of course. You can open a socket connection, and fire comands directly into Maya. If you know what you're doing, you can have Python do all the fancy work, and then "convert" that to a mel happy syntax, and shoot it into Maya. Do I do this? No.... but it "could" be done.
Finally, I've found a fantastic book that I'm learning from. "Python Programming for the Absolute Beginner", (sorry for the long link, tinyrul ain't loading right now) Here it is on Amazon: http://www.amazon.com/exec/obidos/tg/detai...nce&s=books
I think that just about explains it 