Поскольку файлы FASTA содержат данные в таком формате:
>ID1
seq_1
>ID2
seq_2
...
Согласно вашему коду, если ваша строка содержит только >
, вы пытаетесь добавить последовательность.Это означает, что вы добавляете последовательность для ID_1, когда выполняете итерацию для ID_2.
Чтобы решить эту проблему, вы можете сделать что-то вроде этого:
for line in file:
line = line.strip()
if '>' in line: # Line 1
line = file.readline().strip()
# print(line)
strings.append(line)
В этом примере выше используется тот факт, чтов файле FASTA последовательность идет сразу после идентификатора, который содержит символ >
(вы можете изменить строку 1, чтобы он просто проверял первый символ, line[0] == ">"
).