Я пытаюсь написать python код, который просматривает файлы '.fa' в каталоге, находит каждую строку, начинающуюся с ">", и заменяет всю строку частью имени файла плюс число, представляющее подстановку. Число * '> BGC0001830.1_ORF2 MTDEESLWIRRFHPCPQAEIQLVCLPHAGGSASYFFPMSRALTPAVEVLSVQYPGRQDRRHEPCIENLSELADRVFDAIQGQTNRPLALFGHSMGA
1013 *
Ожидаемый результат: 1017 *'> XXX_YYY_contig1 MYVTAPDRIGEVQLSDGRLLGWAEWGTPDGTPVLFSPGAATSRWLGFGAEVIDRLGVRLVSVDRPGLGASTPLPGRTFADFVADLQQFTTMRELGR 1019 * '> XXX_YYY_contig2 MTDEESLWIRRFHPCPQAEIQLVCLPHAGGSASYFFPMSRALTPAVEVLSVQYPGRQDRRHEPCIENLSELADRVFDAIQGQTNRPLALFGHSMGA
Мне удалось написать код ниже, но у меня появляется следующая ошибка, и я не понимаю, почему:
FileNotFoundErr или: [Errno 2] Нет такого файла или каталога: 'XXX_YYY_ZZZ.fa'
import os
import fileinput
import sys
import re
os.getcwd()
entries = os.listdir("/../")
i=1
for filename in entries:
with fileinput.FileInput(filename, inplace=False) as file:
name = fileinput.filename()
x=name.split('_')
x[0:2] = ['_'.join(x[0:2])]
final=str(x[0])
for line in file:
i+=1
if line.strip().startswith(">"):
title=">{}_contig{}\n".format(final, i)
line = re.sub(title)
sys.stdout.write(line)