我想用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