#!/usr/bin/env python

from bio.seq.base import Gff

def filter_feat(gff,featLst=["gene_id","transcript_id","exon_number"]):

	new_feat_lst = []
	for rec in gff:
		rec_lst=rec.get_lst()
		feats = rec_lst.pop()#features
		for key in featLst:
			value = feats.get(key)
			if not value:
				continue
			#if value
			new_feat_lst.append(key+" \""+value+"\"")
		rec_lst.append("; ".join(new_feat_lst))
		yield "\t".join(map(str,rec_lst))
		new_feat_lst=[]

def main(infile,outfile):

	mygff = Gff(infile)
	for rec in filter_feat(mygff):
		outfile.write(rec+"\n")

if __name__ == '__main__':

	import sys
	main(sys.argv[1],sys.stdout)
