About
About Python
Python is a remarkably powerful dynamic programming language that is used in a
wide variety of application domains. Python is often
compared to Tcl, Perl, Ruby, Scheme or Java. Some of its key distinguishing
features include:
- very clear, readable syntax
- strong introspection capabilities
- intuitive object orientation
- natural expression of procedural code
- full modularity, supporting hierarchical packages
- exception-based error handling
- very high level dynamic data types
- extensive standard libraries and third party modules for virtually every task
- extensions and modules easily written in C, C++ (or Java for Jython, or .NET languages for IronPython)
- embeddable within applications as a scripting interface
Python is powerful... and fast
Fans of Python use the phrase "batteries included" to describe the
standard library, which covers
everything from asynchronous processing to zip files. The language itself
is a flexible powerhouse that can handle practically any
problem domain.
Build your own web server in three lines of code. Build flexible
data-driven code using Python's powerful and dynamic introspection
capabilities and advanced language features such as meta-classes,
duck typing and
decorators.
Python lets you write the code you need, quickly. And, thanks to a highly
optimized byte compiler and support libraries, Python code runs more than
fast enough for most applications. The traditional implementation of CPython
uses a bytecode virtual machine; PyPy
supports just-in-time (JIT) compilation to machine code. Also, Jython and
IronPython (see below) support JIT compilation on their respective
virtual machine implementations.
Python plays well with others
Python can integrate with COM, .NET, and CORBA objects.
For Java libraries, use Jython, an
implementation of Python for the Java Virtual Machine.
For .NET, try IronPython ,
Microsoft's new implementation of Python for .NET, or Python for .NET.
Python is also supported for the Internet Communications Engine (ICE) and many other integration technologies.
If you find something that Python cannot do, or if you need the
performance advantage of low-level code, you can write extension
modules in C or C++, or
wrap existing code with SWIG or
Boost.Python. Wrapped modules
appear to your program exactly like native Python code. That's
language integration made easy. You can also go the opposite route and
embed Python in your
own application, providing your users with a language they'll enjoy
using.
Python runs everywhere
Python is available for all major operating systems: Windows,
Linux/Unix, OS/2, Mac, Amiga, among others. There are even
versions that run on .NET and
the Java virtual machine. You'll be pleased to
know that the same source code will run unchanged across all
implementations.
Your favorite system isn't listed here? It may still support Python if
there's a C compiler for it. Ask around on news:comp.lang.python - or just try compiling Python yourself.
Python is friendly... and easy to learn
The Python newsgroup is known as one of the friendliest around. The avid
developer and user community maintains a
wiki, hosts international and local
conferences, runs development sprints,
and contributes to online code repositories.
Python also comes with complete documentation, both integrated into
the language and as separate web pages. Online tutorials target both the
seasoned programmer and the
newcomer.
All are designed to make you productive quickly. The availability of
first-rate books completes
the learning package.