我想用Python编写一个脚本,使用BioPython读取一个FASTA文件并生成一个原始DNA序列列表作为条目。由于这段代码将被许多其他脚本使用,我将写这些代码,我希望为此目的的函数位于一个单独的Python文件中,我可以在我编写的每个其他脚本的开头导入该文件。包含我目前调用函数的脚本是这样:函数返回的列表/字典不返回
from Bio import SeqIO
def read_fasta(dna):
genome = []
for seq_record in SeqIO.parse(dna, "fasta"):
genome.append(str(seq_record.seq))
return genome
当我从CMD调用这个函数在Python中,函数工作并读取文件生成列表如我所愿。但是,如果我尝试再次访问列表genome
,则会出现Traceback | NameError: name 'genome' not defined
错误。
有人可以解释为什么发生这种情况,甚至认为我已经把return genome
陈述?我能做些什么来解决这个问题?
你能显示堆栈跟踪吗? – karthikr
您可以在堆栈跟踪中使用此函数显示脚本吗? – vaidik
你在哪里打电话?当你调用它时,它返回*值*,它不会创建一个名为'基因组'的变量。你必须对返回的值做些什么。 从Bio_FASTA进口* read_fasta(“pcr_template.fasta”) 我应该如何分配一个变量,基因组/用它做什么: – BrenBarn