将读取文件的代码封装成函数,并使其作为模块可在其他程序运行

创建fasta_def.py文件,并输入如下代码:

 1 def read_fasta(input): #用def定义函数read_fasta(),并向函数传递参数用变量input接收
 2     with open(input,'r') as f: # 打开文件
 3         fasta = {} # 定义一个空的字典
 4         for line in f:
 5             line = line.strip() # 去除末尾换行符
 6             if line[0] == '>':
 7                 header = line[1:]
 8             else:
 9                 sequence = line
10                 fasta[header] = fasta.get(header,'') + sequence
11     return fasta 
12 
13 
14 if __name__ == '__main__': # 函数若是在当前程序运行则执行下面的代码,若是在另外的程序作为模块运行则不执行下面的代码
15     fasta_info = read_fasta('genome_test.fa')
16     print(fasta_info)

新建一个test.py文件

输入如下代码调用上述模块fasta_def

1 import fasta_def
2 
3 fa = fasta_def.read_fasta('genome_test.fa')

 

posted on 2019-05-13 09:59  caicai2019  阅读(1552)  评论(0编辑  收藏  举报