Ich habe den folgenden Code in Python:
#/usr/bin/python
from Bio import SeqIO
count = SeqIO.convert(“genome1.gbk”, “genbank”, “genome1.fasta”, “fasta”)
print("Converted %i records" % count)
Dieser Code konvertiert die Genbank-Datei „genome1.gbk“ in eine Fasta-Datei „genome1.fasta“. Aber jetzt möchte ich alle Dateien im aktuellen Ordner mit diesem Code konvertieren. Alle Dateien im aktuellen Ordner sind Genbank-Dateien und ich möchte, dass sie mit diesem Code in Fasta-Dateien umgewandelt werden. Ich dachte daran, Platzhalter zu verwenden, weiß aber nicht genau, wie ich diesen Code ändern soll. Jede Hilfe ist willkommen.
Antwort1
Mit Pythonsos.scandir
Besonderheit:
#/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)
Antwort2
Sie können diesem Code folgen:
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