Author: The Biopython Consortium


        Biopython README file
The Biopython Project is an international association of developers of freely
available Python tools for computational molecular biology.

Our user-centric documentation is hosted on including
the main Biopython Tutorial and Cookbook:

* HTML -
* PDF -

This README file is intended primarily for people interested in working
with the Biopython source code, either one of the releases from the website, or from our repository on GitHub

This Biopython package is open source software made available under generous
terms. Please see the LICENSE file for further details.

If you use Biopython in work contributing to a scientific publication, we ask
that you cite our application note (below) or one of the module specific
publications (listed on our website):

Cock, P.J.A. et al. Biopython: freely available Python tools for computational
molecular biology and bioinformatics. Bioinformatics 2009 Jun 1; 25(11) 1422-3 pmid:19304878

For the impatient

To build and install Biopython, download and unzip the source code, go to this
directory at the command line, and type::

    python build
    python test
    sudo python install

Windows users are instead recommended to use the installation packages provided
on our website,

Python Requirements

We currently recommend using Python 2.7 from which
is the final version of Python 2. Early adopters are encouraged to try
Biopython under Python 3.3 as well.

Biopython is currently supported and tested on the following Python verions:

- Python 2.6, 2.7, 3.3 -- see

  This is the currently the primary development platform for Biopython.

- PyPy 1.9, 2.0, 2.1, 2.2 -- see

  Aside from modules with C code or dependent of NumPy, everything should
  work. PyPy's NumPy reimplementation NumPyPy is still in progress.

- Jython 2.7 -- see

  Aside from modules with C code, or dependent on SQLite3 or NumPy,
  everything should work.

Please note that Biopython 1.62 was our final release to support Python 2.5
and Jython 2.5.


Depending on which parts of Biopython you plan to use, there are a
number of other optional Python dependencies - which can in general
be installed after Biopython.

- NumPy, see (optional, but strongly recommended)
  This package is only used in the computationally-oriented modules.
  It is required for Bio.Cluster, Bio.PDB and a few other modules.  If you
  think you might need these modules, then please install NumPy first BEFORE
  installing Biopython. The older Numeric library is no longer supported in

- ReportLab, see (optional)
  This package is only used in Bio.Graphics, so if you do not need this
  functionality, you will not need to install this package.  You can install
  it later if needed.

- matplotlib, see (optional)
  Bio.Phylo uses this package to plot phylogenetic trees. As with ReportLab,
  you can install this at any time to enable the plotting functionality.

- networkx, see (optional) and
  pygraphviz or pydot, see and (optional)
  These packages are used for certain niche functions in Bio.Phylo.
  Again, they are only needed to enable these functions and can be installed
  later if needed.

- rdflib, see (optional)
  This package is used in the CDAO parser under Bio.Phylo, and can be installed
  as needed.

- psycopg2, see (optional) or
  PyGreSQL (pgdb), see (optional)
  These packages are used by BioSQL