Добавить знаки в строку в соответствии с другой строкой - PullRequest
0 голосов
/ 02 марта 2019

У меня есть две строки:

protein = 'IHASEQSDCEKMNALLEKINAIYATDKAKAENYLAEARALKCDKYQEALNNFATIIIKDNSDKEE---LALSDCDVNKLQQLLSDKRLTPEKKIEYNA-LYSNINQANQ--ILNQDVA'
protein_structure = 'HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHEEEECCCCHHHHHHHHHHHHHHHHEEETTTCHHHHHHHHHHCTCTCCCCEEEEEECCC'

Мне нужно добавить '-' к protein_structure

aligned_structure_to_protein = 'HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHEEEECCCCHHH---HHHHHHHHHHHHHEEETTTCHHHHHHHHHH-CTCTCCCCEE--EEEECCC' 

Я думал о поиске индекса в индексах белковых строк '-'составьте список из строки protein_structure и вставьте '-' по индексу.к списку.И, наконец, измените список на строку.

protein = 'IHASEQSDCEKMNALLEKINAIYATDKAKAENYLAEARALKCDKYQEALNNFATIIIKDNSDKEE---LALSDCDVNKLQQLLSDKRLTPEKKIEYNA-LYSNINQANQ--ILNQDVA'
protein_structure = 'HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHEEEECCCCHHHHHHHHHHHHHHHHEEETTTCHHHHHHHHHHCTCTCCCCEEEEEECCC'

indexes_of_minus = [i for i, ltr in enumerate(protein) if ltr == '-']

list_of_structure_elements = list(protein_stucture)

Но я не знаю, как правильно вставить знаки '-' в список

1 Ответ

0 голосов
/ 02 марта 2019

Сделайте это после нахождения indexes_of_minus:

for i in indexes_of_minus:
    list_of_structure_elements.insert(i, '-')

, затем:

final = ''.join(list_of_structure_elements)

Тест:

In [38]: final
Out[38]: 'HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHEEEECCCCHHH---HHHHHHHHHHHHHEEETTTCHHHHHHHHHH-CTCTCCCCEE--EEEECCC'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...