6 def extract_sequence(instream, outstream, start, end):
10 result = [record[0], record[1][start:end]]
12 result = [record[0][start:end]]
13 outstream.write("\t".join(result))
14 outstream.write(os.linesep)
18 usage = "usage: %prog [options] infile [outfile]"
20 parser = optparse.OptionParser(usage)
21 parser.add_option("-e", "--extract", dest="slice",
23 help="provide a python slice operator to select a portion of an eland file")
27 parser = make_parser()
29 (opt, args) = parser.parse_args(argv)
31 if len(args) not in (0, 1, 2):
32 parser.error('incorrect number of arguments')
34 # get our slice coordinates
35 start, end = opt.slice.split(':')
47 instream = open(args[0],'r')
52 outstream = open(args[1],'w')
54 outstream = sys.stdout
56 extract_sequence(instream, outstream, start, end)
58 if __name__ == "__main__":
59 sys.exit(main(sys.argv[1:]))