Introduction
============
.. image:: /_static/photos/34725946825_0f85497e60_k_d.jpg
From the `official Python website `_:
Python is a general-purpose, high-level programming language similar
to Tcl, Perl, Ruby, Scheme, or Java. Some of its main key features
include:
* **very clear, readable syntax**
Python's philosophy focuses on readability, from code blocks
delineated with significant whitespace to intuitive keywords in
place of inscrutable punctuation.
* **extensive standard libraries and third party modules for virtually
any task**
Python is sometimes described with the words "batteries included"
because of its extensive
`standard library `_, which includes
modules for regular expressions, file IO, fraction handling,
object serialization, and much more.
Additionally, the
`Python Package Index `_ is available
for users to submit their packages for widespread use, similar to
Perl's `CPAN `_. There is a thriving community
of very powerful Python frameworks and tools like
the `Django `_ web framework and the
`NumPy `_ set of math routines.
* **integration with other systems**
Python can integrate with `Java libraries `_,
enabling it to be used with the rich Java environment that corporate
programmers are used to. It can also be
`extended by C or C++ modules `_
when speed is of the essence.
* **ubiquity on computers**
Python is available on Windows, \*nix, and Mac. It runs wherever the
Java virtual machine runs, and the reference implementation CPython
can help bring Python to wherever there is a working C compiler.
* **friendly community**
Python has a vibrant and large :ref:`community `
which maintains wikis, conferences, countless repositories,
mailing lists, IRC channels, and so much more. Heck, the Python
community is even helping to write this guide!
.. _about-ref:
About This Guide
----------------
Purpose
~~~~~~~
The Hitchhiker's Guide to Python exists to provide both novice and expert
Python developers a best practice handbook for the installation, configuration,
and usage of Python on a daily basis.
By the Community
~~~~~~~~~~~~~~~~
This guide is architected and maintained by `Kenneth Reitz
`_ in an open fashion. This is a
community-driven effort that serves one purpose: to serve the community.
For the Community
~~~~~~~~~~~~~~~~~
All contributions to the Guide are welcome, from Pythonistas of all levels.
If you think there's a gap in what the Guide covers, fork the Guide on
GitHub and submit a pull request.
Contributions are welcome from everyone, whether they're an old hand or a
first-time Pythonista, and the authors to the Guide will gladly help if you
have any questions about the appropriateness, completeness, or accuracy of
a contribution.
To get started working on The Hitchhiker's Guide,
see the :doc:`/notes/contribute` page.