Como processar todos os arquivos em uma pasta com código python

Como processar todos os arquivos em uma pasta com código python

Tenho o seguinte código em python:

#/usr/bin/python

from Bio import SeqIO

count = SeqIO.convert(“genome1.gbk”, “genbank”, “genome1.fasta”, “fasta”)

print("Converted %i records" % count)

Este código converte o arquivo genbank "genome1.gbk" em um arquivo fasta "genome1.fasta". Mas agora quero converter todos os arquivos da pasta atual com este código. Todos os arquivos da pasta atual são arquivos genbank e quero que eles se transformem em arquivos fasta com este código. Estava pensando em usar curingas, mas não sei exatamente como alterar esse código. Qualquer ajuda é apreciada

Responder1

Com Pythonos.scandirrecurso:

#/usr/bin/python

from Bio import SeqIO
from os import scandir

with scandir() as it:
    for entry in it:
        if entry.name.endswith('.gbk') and entry.is_file():
            count = SeqIO.convert(entry.name, 'genbank', '{}.fasta'.format(entry.name[:-4]), 'fasta')
            print("Converted %i records" % count)

Responder2

Você pode seguir este código:

import os 
from Bio import SeqIO

for filename in os.listdir('.'):
  if filename.endswith(".gbk"):
    count = SeqIO.convert(filename, “genbank”, "{}.fasta".format(entry.name[:-4]), “fasta”)
    print("Converted %i records" % count)

BR,
Shahar

informação relacionada