示例#1
0
def seekGOTerms(keywords, output_file = None):
	'''
	keywords: A list of words to search for.
	'''

	ret = {} # Key: GO ID, Value: Term
	
	
	for gid in go.go_terms.keys():
		gx = GO.GOTerm()
		gx = go.getGOTermOf(gid)
		
		desc = gx.getGOName()
		
		
		for k in keywords:
		
			k = k.upper()
			
			
			if desc.upper().find(k) >= 0:
				ret[gid] = desc
				print gid, desc
				break
			
			
		
	
	f=None
	if output_file is not None:
		f=open(output_file, 'w')
	
	for gid in ret.keys():
		s = '\t'+gid+'\t# '+ret[gid]
		if f is not None:
			f.write(s+'\n')
		else:
			print s
		
		
	if f is not None:
		f.close()