Как обработать все файлы в папке с помощью кода Python

Как обработать все файлы в папке с помощью кода Python

У меня есть следующий код на Python:

#/usr/bin/python

from Bio import SeqIO

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

print("Converted %i records" % count)

Этот код преобразует файл genbank "genome1.gbk" в файл fasta "genome1.fasta". Но теперь я хочу преобразовать все файлы в текущей папке с помощью этого кода. Все файлы в текущей папке являются файлами genbank, и я хочу, чтобы они превратились в файлы fasta с помощью этого кода. Я думал об использовании подстановочных знаков, но я не знаю точно, как изменить этот код. Любая помощь будет оценена по достоинству

решение1

С Python'sos.scandirособенность:

#/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)

решение2

Вы можете следовать этому кодексу:

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)

БР,
Шахар

Связанный контент