我正在尝试创建一个循环来逐个解析我在同一目录中的5个fasta文件。现在我来解释一下,我有5个fasta文件,包含5个微生物的基因组,每个文件中都有一个。其思想是从每个文件中获取de in,并将它们放入字典{Mo_Id1:0, Mo_Id2:0...,Mo_Id5:0}
中
我认为我的循环读取了第一个文件,但随后出现了以下错误:No such file or directory 'GCF_000006532.1_ASM696v3_genomic.fna'
(这是我的文件夹中第二个文件的名称)。我给你看我的代码:
from Bio import SeqIO
import os
dicc_MO=[]
files = os.listdir("/home/alumno/Escritorio/Asig2Python/Semana4/Tarea/genomas/genomas")
for f in files:
for record_seqMO in SeqIO.parse(f,"fasta"):
record_seqMO.id not in dicc_MO:
dicc_MO[record_seqMO.id] = 0
print(dicc_MO)
使用dicc_MO,我试图检查循环是否正常,在这种情况下,我应该有一个字典,其中关键字是微生物名称,值是0。
发布于 2020-11-24 15:55:38
命令os.listdir
仅显示不带路径的文件名。因此,您需要为列表files
中的每个文件名添加路径。
from Bio import SeqIO
import os
dicc_MO=[]
files=os.listdir("/home/alumno/Escritorio/Asig2Python/Semana4/Tarea/genomas/genomas")
for f in files:
f = f + "/home/alumno/Escritorio/Asig2Python/Semana4/Tarea/genomas/genomas/"
for record_seqMO in SeqIO.parse(f,"fasta"):
...
https://stackoverflow.com/questions/64968962
复制相似问题