Notice: While JavaScript is not essential for this website, your interaction with the content will be limited. Please turn JavaScript on for the full experience.
Python is an interpreted, object-oriented, high-level programminglanguage with dynamic semantics. Its high-level built in datastructures, combined with dynamic typing and dynamic binding, make itvery attractive for Rapid Application Development, as well as for useas a scripting or glue language to connect existing componentstogether. Python's simple, easy to learn syntax emphasizesreadability and therefore reduces the cost of program maintenance.Python supports modules and packages, which encourages programmodularity and code reuse. The Python interpreter and the extensivestandard library are available in source or binary form without chargefor all major platforms, and can be freely distributed.
Often, programmers fall in love with Python because of theincreased productivity it provides. Since there is no compilationstep, the edit-test-debug cycle is incredibly fast. Debugging Pythonprograms is easy: a bug or bad input will never cause a segmentationfault. Instead, when the interpreter discovers an error, it raises anexception. When the program doesn't catch the exception, theinterpreter prints a stack trace. A source level debugger allowsinspection of local and global variables, evaluation of arbitraryexpressions, setting breakpoints, stepping through the code a line ata time, and so on. The debugger is written in Python itself,testifying to Python's introspective power. On the other hand, oftenthe quickest way to debug a program is to add a few print statementsto the source: the fast edit-test-debug cycle makes this simpleapproach very effective.
See also some comparisons betweenPython and other languages.