This module provides support for maintaining a list in sorted order
without having to sort the list after each insertion.  For long lists
of items with expensive comparison operations, this can be an
improvement over the more common approach.  The module is called
bisect because it uses a basic bisection algorithm to do its
work.  The source code may be most useful as a working example of the
algorithm (the boundary conditions are already right!).
The following functions are provided:
- 
  | bisect_left( | list, item[, lo[, hi]]) |  
 
- 
  Locate the proper insertion point for item in list to
  maintain sorted order.  The parameters lo and hi may be
  used to specify a subset of the list which should be considered; by
  default the entire list is used.  If item is already present
  in list, the insertion point will be before (to the left of)
  any existing entries.  The return value is suitable for use as the
  first parameter to list.insert().  This assumes that
  list is already sorted.
New in version 2.1.
- 
  | bisect_right( | list, item[, lo[, hi]]) |  
 
- 
  Similar to bisect_left(), but returns an insertion point
  which comes after (to the right of) any existing entries of
  item in list.
New in version 2.1.
- 
  Alias for bisect_right().
- 
  | insort_left( | list, item[, lo[, hi]]) |  
 
- 
  Insert item in list in sorted order.  This is equivalent
  to list.insert(bisect.bisect_left(list, item,
  lo, hi), item).  This assumes that list is
  already sorted.
New in version 2.1.
- 
  | insort_right( | list, item[, lo[, hi]]) |  
 
- 
  Similar to insort_left(), but inserting item in
  list after any existing entries of item.
New in version 2.1.
- 
  Alias for insort_right().
Release 2.4.4, documentation updated on 18 October 2006.
 
See About this document... for information on suggesting changes.