The Python Programming Language
- Python is a dynamic object-oriented programming language that can be used for many kinds of software development. It offers strong support for integration with other languages and tools, comes with extensive standard libraries, and can be learned in a few days. Many Python programmers report substantial productivity gains and feel the language encourages the development of higher quality, more maintainable code.
- Python runs on Windows, Linux/Unix, Mac OS X, OS/2, Amiga, Palm Handhelds, and Nokia mobile phones. Python has also been ported to the Java and .NET virtual machines.
- Python is distributed under an OSI-approved open source license that makes it free to use, even for commercial products.
For Java platforms use Jython, an implementation of Python for the Java Virtual Machine. For .NET, try IronPython, Microsoft's new implementation of Python for .NET.
Python can integrate with COM, .NET, and CORBA objects. 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 C or C++ code with SWIG, Boost.Python or WEAVE or for existing Fortran code using F2PY (which now forms part of the NumPy package, and lives here). 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.
For more information, have a look at the following:
Another excellent resource, is the book by Hans Peter Langtangen, Python Scripting for Computational Science, Second Edition, ISBN 3-540-29415-5
Until this wiki is complete, also have a look at my Python pages here
I you are ready to take the plunge, see Getting Started with Python on Windows XP and Migrating from Matlab to Python