Home » About Python »
Benefits of Python

Python users report dramatic productivity benefits over development in other languages, typically with 10 times the development speed seen with C or C++ and a 2 times that seen with Java or Visual Basic. This productivity boost is the result of these specific benefits of Python:
Fast Python. Unlike some interpreted languages, Python results in a
snappy finished product. It does this because most of Python's support
modules are written in C and C++, hidden under a thin but powerful
interpreted layer. As a result, applications respond well because more
CPU cycles are spent in fast C/C++ code and fewer are spent spinning the
interpreter's wheels. For Java users, Jython supports Python compilation
to efficient JVM byte code that is comparable in speed to Java modules.
Extensible Python. With Python, it is easy to write your own C or C++
extension modules, and then load them into your Python code. Jython, the
Java implementation of Python, seamlessly integrates Python and Java
modules. This means that you can wrap existing technologies for use in
Python, and you can compile the Python interpreter into larger systems,
treating Python as a scripting language. Adopting Python doesn't mean
abandoning your existing code base.
Powerful Python. Python isn't just a language. It comes with an
extensive standard library of useful modules, including extensive support
for email and other internet data formats, HTML, XML and other
markup languages, http, ftp, and many other internet protocols,
cryptography, COM and CORBA support, interfaces to most
databases, GUI development frameworks, and much more. Using these
modules, a few lines of Python code goes a long way.
Portable Python. Python runs on most operating systems, including some
embedded and special-purpose processors. Python byte code produced on one
platform will run on other platforms. Applications written in pure Python
using the core standard libraries can be deployed to multiple platforms
without recompilation or repackaging. However, optional platform-specific
support modules are available when portability is not a requirement.
These include support for Windows APIs and COM, Macintosh OS, and some
Unix-specific facilities.
Scalable Python. The speed, power, and extensibility of Python
combine to give you a development toolset that will scale effortlessly
to the largest projects. Multi-threading is supported, and it's easy to
incorporate other technologies in Enterprise Application Integration.
The Python-based Zope application server is a great way to build robust,
scalable support for your web applications, and the Twisted framework is
capable of running many concurrent mixed protocol services.
Maintainable Python. Python's elegant simplicity yields code that is
not only readable, but also easy to redesign and modify. Because Python's
syntax uses indentation to define program structure, code is easy to move
around, making it a snap to split up modules or restructure classes. Less
time is spent understanding and rewriting code, which leads to faster bug
fixes, faster development and integration of new features, and a
better-designed code base.
Open Python. Python's quality and power is in large part a result of
the fact that it was developed by thousands of contributors from around
the world. Instead of being controlled by a comparatively small
proprietary development team, Python is open to peer-reviewed
incorporation of the best available new ideas and features. Python's
standard library is continually being improved and expanded with support
for the latest emerging technologies, such as XML and Soap.
Extensive beta testing by large numbers of users keeps the quality of
each release high. Because Python's open source license is unrestrictive,
there are no substantial limitations on commercial use or customization.
The intellectual property rights to Python are controlled by the Python
Software Foundation, which was founded to further Python's development
and wider adoption.
Ubiquitous Python. The bottom line is that Python works extremely
well for tasks from scripting and build configuration, to business
applications, complex GUI applications, and multi-tiered enterprise-wide
solutions. Because of Python's unmatched flexibility, it can be used
as a single powerful technology that reduces training and development
costs, and increases overall maintainability of your code base.
