Добавить элемент списка после каждой последовательности гена - PullRequest
1 голос
/ 02 апреля 2020

Я разделил последовательность генома на отдельные гены, и я хочу записать их в текстовый файл. Я хочу добавить заголовок (название гена) перед каждой последовательностью гена. Я создал список имен генов, которые будут добавлены в качестве заголовка. Они должны быть добавлены в том же порядке, как указано в списке. Вот код, который я пробовал:

with open('output.txt', 'w') as f:
    for i in genes:
        for rec in i:
            for name in Features:               
                print(">" + name, file = f)
            print(rec.seq, file = f)
            print("\n", file = f)
            break

Features - это список, содержащий названия генов. Выход для этого кода:

>Anchored capsid protein:
>C:
>membrane glycoprotein precursor M:
>protein PR:
>M:
>E:
>NSI:
>NS2A:
>NS2B:
>NS3:
>NS4A:
>NS4B:
>NS5:
>
ATGAATA...

Когда это должно быть:

>Anchored capsid protein:
ATGAATA...
>C:
ATGAATA...
>membrane protein:
TTCCATT...
>precursor:
TTCCATT...

1 Ответ

1 голос
/ 03 апреля 2020

Если я понимаю структуру ваших списков, это может сработать:

with open('output.txt', 'w') as f:
    for i in genes:
        for name, rec in zip(Features, i):
            f.write(">{}\n{}\n".format(name, rec.seq))
        break
...