one whetting your appetite if you do much work on computerseventually you find that there' some task you' like to automate for exampleyou may wish to perform search-and-replace over large number of text filesor rename and rearrange bunch of photo files in complicated way perhaps you' like to write small custom databaseor specialized gui applicationor simple game if you're professional software developeryou may have to work with several / ++/java libraries but find the usual write/compile/test/re-compile cycle is too slow perhaps you're writing test suite for such library and find writing the testing code tedious task or maybe you've written program that could use an extension languageand you don' want to design and implement whole new language for your application python is just the language for you you could write unix shell script or windows batch files for some of these tasksbut shell scripts are best at moving around files and changing text datanot well-suited for gui applications or games you could write / ++/java programbut it can take lot of development time to get even first-draft program python is simpler to useavailable on windowsmac os xand unix operating systemsand will help you get the job done more quickly python is simple to usebut it is real programming languageoffering much more structure and support for large programs than shell scripts or batch files can offer on the other handpython also offers much more error checking than candbeing very-high-level languageit has high-level data types built insuch as flexible arrays and dictionaries because of its more general data types python is applicable to much larger problem domain than awk or even perlyet many things are at least as easy in python as in those languages python allows you to split your program into modules that can be reused in other python programs it comes with large collection of standard modules that you can use as the basis of your programs -or as examples to start learning to program in python some of these modules provide things like file /osystem callssocketsand even interfaces to graphical user interface toolkits like tk python is an interpreted languagewhich can save you considerable time during program development because no compilation and linking is necessary the interpreter can be used interactivelywhich makes it easy to experiment with features of the languageto write throw-away programsor to test functions during bottom-up program development it is also handy desk calculator python enables programs to be written compactly and readably programs written in python are typically much shorter than equivalent cc++or java programsfor several reasonsthe high-level data types allow you to express complex operations in single statementstatement grouping is done by indentation instead of beginning and ending bracketsno variable or argument declarations are necessary python is extensibleif you know how to program in it is easy to add new built-in function or module to the interpretereither to perform critical operations at maximum speedor to link python programs to libraries that may only be available in binary form (such as vendor-specific graphics libraryonce you