将读取文件的代码封装成函数,并使其作为模块可在其他程序运行
创建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')