Python is another of those languages
that really annoy
s in the crowd because it made what is in my mind a very reasonable design trade off
. Their goal
was to make the language as usable
and easy to learn
as possible, while still providing a powerful
language that would still allow the intermediate
to advanced programmer
using an elegant
and regular syntax
In particular, Python is a slightly higher level language than its main competitor, Perl, and is completely Object-Oriented rather than the object and scoping infrastructures being added as an afterthought to the original language design.
Perl hackers will rant about how their language's quirkiness and flexibility make it more powerful than Python, but in point of fact while it's true that Python will not let you stuff an elephant into a purse, only the most lofty gurus would want to anyway.
Lately I've been very happy with Ruby - it does all of what Python does and eliminates the mandatory indentation issues. Ruby is a more purely object oriented language than Python as everything is an object, even the primitive types.
That having been said Python still gets a place of honor in my tool belt and that's unlikely to change in the foreseeable future.