根据另一个字符串在字符串中添加符号

时间:2019-03-02 12:33:31

标签: python string indexing

我有两个字符串:

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 :(得分:0)

在找到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'