Tools for manipulating biological data, particularly multiple sequence alignments
Python C Other
Switch branches/tags
Clone or download
Latest commit 325f495 Feb 8, 2018

Build Status


The bx-python project is a python library and associated set of scripts to allow for rapid implementation of genome scale analyses. The library contains a variety of useful modules, but the particular strengths are:

  • Classes for reading and working with genome-scale multiple local alignments (in MAF, AXT, and LAV formats)
  • Generic data structure for indexing on disk files that contain blocks of data associated with intervals on various sequences (used, for example, to provide random access to individual alignments in huge files; optomized for use over network filesystems)
  • Data structures for working with intervals on sequences
    • "Binned bitsets" which act just like chromosome sized bit arrays, but lazily allocate regions and allow large blocks of all set or all unset bits to be stored compactly
    • "Intersecter" for performing fast intersection tests that preserve both query and target intervals and associated annotation


The package can be installed with pip:

pip install bx-python

It is available in bioconda (recommended):

conda install -c bioconda bx-python

Or can be built from a checkout of the repository:

python install