code: def zipbed(args):
      
      p = OptionParser(zipbed.__doc__)
      p.add_option("--prefix", default="b",
                   help="Prefix for the new seqid [default: %default]")
      opts, args = p.parse_args(args)
  
      if len(args) != 2:
          sys.exit(not p.print_help())
  
      bedfile, anchorfile = args
      prefix = opts.prefix
      bed = Bed(bedfile)
      order = bed.order
      newbedfile = prefix + ".bed"
      fw = open(newbedfile, "w")
  
      af = AnchorFile(anchorfile)
      blocks = af.blocks
      pad = len(str(len(blocks)))
      for i, block in enumerate(blocks):
          block_id = "{0}{1:0{2}d}".format(prefix, i + 1, pad)
          pairs = []
          for q, s, score in block:
              qi, q = order[q]
              si, s = order[s]
              pairs.append((qi, si))
          newbed = list(interleave_pairs(pairs))
          for i, b in enumerate(newbed):
              accn = bed[b].accn
              print("\t".join(str(x)
                              for x in (block_id, i, i + 1, accn)), file=fw)
  
      logging.debug("Reconstructed bedfile written to `{0}`.".format(newbedfile))
docs: %prog zipbed species.bed collinear.anchors
  
      Build ancestral contig from collinear blocks. For example, to build pre-rho
      order, use `zipbed rice.bed rice.rice.1x1.collinear.anchors`. The algorithms
      proceeds by interleaving the genes together.