What Are Scripting Languages?
Languages like C and C++ allow a programmer to write code at a very detailed level which has good execution speed (especially in the case of C). But in most applications, execution speed is not important, and in many cases one would prefer to write at a higher level. For example, for text-manipulation applications, the basic unit in C/C++ is a character, while for languages like Perl and Python the basic units are lines of text and words within lines. One can work with lines and words in C/C++, but one must go to greater effort to accomplish the same thing.

The term scripting language has never been formally defined, but here are the typical characteristics:
• Used often for system administration, Web programming, text processing, etc.
• Very casual with regard to typing of variables, e.g. little or no distinction between integer, floating-point or string variables. Arrays can mix elements of different “types,” such as integers and strings. Functions can return nonscalars, e.g. arrays. Nonscalars can be used as loop indexes. Etc.
• Lots of high-level operations intrinsic to the language, e.g. string concatenation and stack push/pop.
• Interpreted, rather than being compiled to the instruction set of the host machine

Why Python?
The first really popular scripting language was Perl. It is still in wide usage today, but the languages with momentum are Python and the Python-like Ruby. Many people, including me, greatly prefer Python to Perl, as it is much cleaner and more elegant. Python is very popular among the developers at Google.

Advocates of Python, often called pythonistas, say that Python is so clear and so enjoyable to write in that one should use Python for all of one’s programming work, not just for scripting work. They believe it is superior to C or C++.1 Personally, I believe that C++ is bloated and its pieces don’t fit together well; Java is nicer, but its strongly-typed nature is in my view a nuisance and an obstacle to clear programming. I was pleased to see that Eric Raymond, the prominent promoter of the open source movement, has also expressed the same views as mine regarding C++, Java and Python.

Download pdf A Quick, Painless Tutorial on the Python Language